如何在 asp.net 中使用绑定变量(在按钮后面)?
Posted
技术标签:
【中文标题】如何在 asp.net 中使用绑定变量(在按钮后面)?【英文标题】:How to use bind variable in asp.net (behind of button)? 【发布时间】:2014-01-29 15:44:38 【问题描述】:我用过一次,将pl/sql中的变量与存储过程绑定。 (加快我的查询结果)。
例如在存储过程中我是这样使用它的:
创建或替换过程 dsal(p_empno in number) 作为 开始 立即执行 '更新雇员集 sal = sal*2 where empno = :x' using p_empno; 犯罪; 结尾;现在,我的查询在前端,(asp.net(vb)和pl/sql)不在存储过程中。 我想在字符串查询中使用绑定变量。
如何在前端(按钮后面)使用这种结构?
【问题讨论】:
好吧,如果你使用 ado.net,有很多文档化的例子。 将 UPDATE 命令文本放入 .NET 代码或将其作为动态 sql 放入存储过程之间没有任何好处。 存储过程中的commit
也是不好的形式。让客户这样做。
【参考方案1】:
x而不是使用带有动态 SQL 的存储过程...
在存储过程中使用 ADO.NET 而不是动态 SQL。您可以像这样使用绑定变量:
OracleCommand command;
...
command.CommandType = CommandType.Text;
command.CommandText = "UPDATE emp SET sal = sal*2 WHERE empno = :x";
command.Parameters.Add("x", someValue);
...
command.ExecuteNonQuery();
...
或者,使用存储过程,但不要像这样使用动态 SQL:
create or replace procedure dsal(p_empno in number) as
begin
UPDATE emp SET sal = sal*2 WHERE empno = p_empno;
end;
【讨论】:
以上是关于如何在 asp.net 中使用绑定变量(在按钮后面)?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Dictionary<string, string> 变量从后面的代码传递到 asp.net?