我使用以下SQL语句:
Dim strSql5 As String = "SELECT * FROM dbo.ontledings " & _ " where plaasblok = @plaasblokparsversoeke " & _ " and analisedatum = @laastedatum" cnn.Open() Dim aksie2 As New SqlClient.SqlCommand(strSql5, cnn) aksie2.Parameters.Add("@plaasblokparsversoeke", SqlDbType.VarChar).Value = plaasblokparsversoeke aksie2.Parameters.Add("@laastedatum", SqlDbType.Date).Value = laastedatum aksie2.ExecuteNonQuery() cnn.Close()
我想填充像这样的数据表:
Dim dtb5 As New DataTable dtb5.Clear() Using cnn As New SqlConnection("Data Source=GIDEON-E-LAPTOP\SQLEXPRESS2014;Initial Catalog=SkeduleringDatabasis;Integrated Security=True") cnn.Open() Using dad5 As New SqlDataAdapter(strSql5, cnn) dad5.Fill(dtb5) End Using cnn.Close() End Using
我收到以下错误消息:必须声明标量变量"@plaasblokparsversoeke"
我无法弄清楚在哪里以及如何声明标量变量.
错误发生在以下行:dad5.Fill(dtb5)
问候
你需要添加像这样的参数
cmd.Parameters.Clear() cmd.Parameters.AddWithValue("@plaasblokparsversoeke", plaasblokparsversoeke.Text) cmd.Parameters.AddWithValue("@laastedatum", laastedatum.Text)
正如下面正确评论的那样,您需要使用Add方法添加参数:
cmd.Parameters.Add("@plaasblokparsversoeke", SqlDbType.Varchar).Value = plaasblokparsversoekeVariable; cmd.Parameters.Add("@laastedatum", SqlDbType.Varchar).Value = laastedatumVariable;