4 votes

Insérer des données dans une base de données SQL à l'aide de Visual Studio 2017

Je reçois une erreur lorsque j'insère des données dans la table SQL.

"L'erreur est System.Data.SqlClient.SqlException : 'Syntaxe incorrecte près de ')'.'.

Sql Table Detail est .

USE [d]
GO
/****** Object:  Table [dbo].[data]    Script Date: 2/20/2018 6:32:54 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[data](
    [no] [int] NOT NULL,
    [name] [nvarchar](50) NULL,
 CONSTRAINT [PK_data] PRIMARY KEY CLUSTERED 
(
    [no] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
INSERT [dbo].[data] ([no], [name]) VALUES (10138, N'Mark')
GO
INSERT [dbo].[data] ([no], [name]) VALUES (40014, N'Antony')
GO

Form1.cs est

using System;
using System.Data;
using System.Windows.Forms;
using System.Data.SqlClient;

protected void button1_Click_1(object sender, EventArgs e)
{
  SqlConnection con = new SqlConnection();
  con.ConnectionString = ("Data Source=sPC;Initial Catalog=d;Integrated Security=True");
  con.Open();
  String st = "INSERT INTO data(no,name)";
  SqlCommand cmd = new SqlCommand(st, con);
  cmd.Parameters.AddWithValue("@no", textBox5.Text);
  cmd.Parameters.AddWithValue("@name", textBox6.Text);
  cmd.ExecuteNonQuery();
  con.Close();
}

J'ai essayé de résoudre le problème mais je n'ai pas eu de chance, j'ai raté quelque chose ?

4voto

Oscar Points 10678

Cette ligne :

String st = "INSERT INTO data(no,name)";

Doit être :

String st = "INSERT INTO data(no,name) values (@no, @name)";

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X