我需要在MySqlCommand中声明一个局部变量,但该变量不断被解释为参数,因此引发异常,表明该参数未初始化。我正在尝试做类似的事情:
comm.CommandText="declare @mid int; etc.....";
@mid
是局部变量,而不是参数,但MicroSoft的某个人认为,使用@前缀参数是个好主意。 最佳答案
MySQL允许在查询中内联创建变量,您只需要使用所需的任何值构建语句,然后就可以在查询中进行调整,就好像它是内联变量一样。由您决定控制和了解/更改数据类型。
select
a.field,
@var1 := @var +1 as sampleIncrease,
@var2 := DATE_ADD( @var2, INTERVAL @var1 DAY )
from
someTable a,
( select @var1 := 1,
@var2 := now() ) sqlvars
where
...
Here is another example from my post posts showing a variety of uses of mysql variables
关于c# - 如何在MySqlCommand中包含“声明”语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27626170/