2011-04-17 83 views
0

您好我需要从用户那里获取客户名称,就像在组合框中一样,当用户选择用户时,我希望在sql表中搜索所选的客户名称(这里的表名是“obbalance”),并全部位于名称为选定的客户NAEM表应该在数据网格视图中显示的条目如何在vb.net中声明sql参数

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

cmd = New SqlCommand("select obbalance from balance where [email protected]", con) 

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

thios还后它显示了一个错误的PLZ u能帮助我如果代码是错误的书房帮我到 做纠正它我是新来的vb.net plz .......... 它显示错误声明所以你可以给我任何其他代码或如果这个鳕鱼Ë登plz向正确的代码PLZ

回答

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

cmd = New SqlCommand("select obbalance from balance where [email protected]", con) 

dr = cmd.ExecuteReader() 

而不是做这个的,你可以做到这一点也

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

你为什么想参数化查询

0

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

cmd = New SqlCommand("select obbalance from balance where [email protected]", 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) 
+0

书房还它一个舒错误 – MUKESH 2011-04-17 06:22:08

+0

@MUKESH - 和错误是??? – Oded 2011-04-17 06:22:41

+0

SqlParameterCollection只接受非空的SqlParameter类型对象,而不是布尔对象。 – MUKESH 2011-04-17 06:22:59