如何在vb.net中声明sql参数

时间:2011-04-17 06:17:38

标签: sql vb.net

嗨我需要从用户那里获取客户名称,如用户为用户提供服务器时,我希望在sql表中搜索所选客户名称(此处表名为“ obbalance “)和表中所有条目的名称为所选客户naem的条目应显示在数据网格视图中

cmd.Parameters.Add(New SqlParameter("@p1", SqlDbType.NVarChar).Value = ComboBox1.SelectedItem.ToString)

cmd = New SqlCommand("select obbalance from balance where custname=@p1", con)

dr = cmd.ExecuteReader()
Form2.Show()
在thios之后它也会显示错误。如果代码错误,我可以帮助我帮助我 请更正我是vb.net的新手PLZ .......... 它在声明中显示错误,所以你可以发给我任何其他代码或者如果这段代码发送正确的代码plz

2 个答案:

答案 0 :(得分:0)

您需要在创建新命令后添加参数

cmd = New SqlCommand("select obbalance from balance where custname=@p1", con)

cmd.Parameters.Add(New SqlParameter("@p1", SqlDbType.NVarChar).Value = ComboBox1.SelectedItem.ToString)

dr = cmd.ExecuteReader()
Form2.Show()

此外,您正在创建布尔值作为Add方法的参数:

New SqlParameter("@p1", SqlDbType.NVarChar).Value = ComboBox1.SelectedItem.ToString

请改为:

Dim param as SqlParameter = New SqlParameter("@p1", SqlDbType.NVarChar)
param.Value = ComboBox1.SelectedItem.ToString)
cmd.Parameters.Add(param)

答案 1 :(得分:-1)

 cmd.Parameters.Add(New SqlParameter("@p1", SqlDbType.NVarChar).Value = ComboBox1.SelectedItem.ToString)

cmd = New SqlCommand("select obbalance from balance where custname=@p1", con)

dr = cmd.ExecuteReader()

而不是这样做,你也可以这样做

cmd=New SqlCommand("select columnname from tablename where custname='"& ComboBox1.SelectedItem.ToString &"'",con)
 dr = cmd.ExecuteReader()

为什么要参数化查询