2011-03-22 22 views
0

这里textbox11包含浮点值和组合框包含一个字符串做我必须把文本或所选项目使用SQL UPDATE查询如何在VB.NET

cmd.CommandType = "UPDATE BALANCE SET OBBALANCE = '"& TextBox11.Text &"' WHERE  CUSTOMERNAME = "& ComboBox1.Text & " " 

它提供了以下错误:

Operator '&' is not defined for string " UPDATE BALANCE SET OBBALANCE = " and type 'DataRowView'. 

回答

2

相反,你应该使用的参数,因为它们都逃过SQL注入,使更多的整齐datapassing:

cmd.CommandType = " UPDATE BALANCE SET OBBALANCE = @NEWBALANCE WHERE CUSTOMERNAME = @CUSTOMERNAME" 

,并添加parameterwithvalue为:

"@NEWBALANCE", TextBox11.Text 
"@CUSTOMERNAME", ComboBox1.Text 

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparameter.aspx

+0

嘿对不起,请问如何添加参数我是新的做对不起,我不想让你紧张其实我odnt knw abt,如何添加参数值 – MUKESH 2011-03-22 18:02:15

+0

@Mukesh你检查链接?有样品.. – stefan 2011-03-22 23:41:26

+0

亚我看到了,但我仍然不能理解如何给或添加参数我已经复制了线,更新cmd线和粘贴,接下来的两件事显示错误,所以如何声明它,我不明白你可以解释 – MUKESH 2011-03-25 20:05:17

0
  1. 我不会推荐使用内联SQL查询。改用存储过程并传递参数。

  2. 如果你通过文字 - 你会得到的显示值...如果你想传递的潜在价值,然后用“的SelectedValue”

  3. 但是解决您的问题,使用的参数。

0

可用CommandTypes是

StoredProcedure的 TableDirect 文本

看起来你要设置你的CommandType文字和您的CommandText设置为你那里。

这就是说,我同意斯蒂芬对参数的回答。