Sql server 我能';t使用Visual Studio 2010 Express在my SQL Server 2008 R2 Management Studio的表中插入项

Sql server 我能';t使用Visual Studio 2010 Express在my SQL Server 2008 R2 Management Studio的表中插入项,sql-server,sql-server-2008-r2,Sql Server,Sql Server 2008 R2,问题就在这里 cmd.ExectureNonQuery() 错误: 提供的值的列名或数目与表定义不匹配 这是我添加按钮的代码 Dim con As New SqlClient.SqlConnection("Server=.\SQLExpress;AttachDBFilename=C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\Finals.mdf;Database=Finals;Trusted_Con

问题就在这里

cmd.ExectureNonQuery()
错误:

提供的值的列名或数目与表定义不匹配

这是我添加按钮的代码

Dim con As New SqlClient.SqlConnection("Server=.\SQLExpress;AttachDBFilename=C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\Finals.mdf;Database=Finals;Trusted_Connection=Yes;")
Dim cmd As New SqlClient.SqlCommand

cmd.Connection = con
cmd.CommandText = "Insert Into [Finals].[dbo].[Nokia] Values ('" & Unit.Text & "'),('" & Price.Text & " '),('" & Stack.Text & "'),('" & Processor.Text & "'),('" & Size.Text & "'),('" & RAM.Text & "'),('" & Internal.Text & "'),('" & ComboBox1.Text & "')"

con.Open()
cmd.ExecuteNonQuery()
con.Close()
我使用的是SQL Server 2008 R2,当我按add时出现错误。有人能帮我找到解决方案吗?还有人能帮我创建删除查询吗

提前感谢。

试试这个:

Dim con As New SqlClient.SqlConnection("Server=.\SQLExpress;AttachDBFilename=C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\Finals.mdf;Database=Finals;Trusted_Connection=Yes;")
Dim cmd As New SqlClient.SqlCommand

cmd.Connection = con
    ' the following text is wrapped for readability
    cmd.CommandText = "Insert Into [Finals].[dbo].[Nokia] Values ('" & Unit.Text & _
        "', '" & Price.Text & "', '" & Stack.Text & "', '" & Processor.Text & "', '" & _
        Size.Text & "', '" & RAM.Text & "', '" & Internal.Text & "', '" & _
        ComboBox1.Text & "')"
    con.Open()
    cmd.ExecuteNonQuery()
    con.Close()
}
您不需要将每个值封装在
中;整个值列表封装在一组括号中,就像我的代码一样


另一方面,像这样执行字符串连接会创建SQL注入漏洞;您应该使用sqlParameter对象将值传递到语句中。

您需要为相关表添加表定义。此外,此问题可能会迁移到堆栈交换,因为它与编程相关。错误消息表明
cmd.CommandText=
行未包含所有必需的字段名,或者某些字段名拼写错误,等等。请将该语句与实际的有问题的表进行比较。