【发布时间】:2011-05-20 22:17:47
【问题描述】:
这个问题是我上一个问题的分支here
我现在可以向我的查询添加多个参数,但我的下一个问题是我正在尝试根据checked 的checkbox 状态添加我的参数
这是我的代码
OracleConn.Open()
OracleCommand = OracleConn.CreateCommand()
OracleCommand.BindByName = True
OracleCommand.CommandText = "UPDATE db SET column1 = :param1 WHERE column2 = :param2"
OracleCommand.CommandType = CommandType.Text
OracleCommand.Parameters.Add(New OracleParameter("param1", "1234"))
If cbCheckbox1.Checked = True Then
OracleCommand.Parameters.Add(New OracleParameter("param2", "Y"))
Else
OracleCommand.Parameters.Add(New OracleParameter("param2", "N"))
End If
OracleCommand.ExecuteNonQuery()
不会出错,但也不会更新数据库
如果我取出If 语句并且像这样只有一个参数
OracleCommand.Parameters.Add(New OracleParameter("param2", "Y"))
然后就可以正常使用了
是不是我做错了什么?
有什么想法吗?
【问题讨论】:
-
“不起作用”是什么意思?它会抛出错误吗?
-
@Dan 它不会抛出错误,它什么也不做,但如果我取出
If语句,那么它运行良好 -
您的意思是删除 if 块并仅将其替换为参数添加行吗?哪一个?
-
如果我删除 If 块并将其替换为任一参数添加行,那么它可以工作
标签: asp.net oracle parameters