" @"的名称和用途是什么? MySql中的运算符?

时间:2014-04-10 10:34:34

标签: mysql procedure

我是一名新手程序员,我目前正在使用Workbench 5.6处理MySQL中的函数和存储过程。我现在已经在SO和网上搜索了一段时间,正式定义了" @" MySQL中的运算符及其正确使用,但我无法找到一些具体的解释。

我们说我有这个:

 /*..... Stored Procedure... */

 declare i int ;
 set @i = 1 ;
 select @i ;

 /* do some other stuff */
 End; 

选择的结果将是1,相反,如果我这样做:

 select i ;

我会得到一个空的结果。 从我到目前为止的直觉来看,我认为这是在存储变量的存储器中访问方向并打印/修改其内容,但我还不太确定。你能否更多地发光? 它还有其他用途吗?

先谢谢。

2 个答案:

答案 0 :(得分:0)

它不是运营商(我怀疑你来自PHP, 是运营商)。它是user-defined variables的语法:

  

用户变量写为@var_name,其中包含变量名称   var_name由字母数字字符“。”,“_”和“$”组成。一个   用户变量名称可以包含其他字符,如果您将其引用为   字符串或标识符(例如,@'my-var'@"my-var"或   @ my-var)。

答案 1 :(得分:0)

@表示一个变量,你在变量前面加上@来防止它们与列名和其他模式混淆,它也使得在查看代码时生活更轻松。当您从x;输入select I时,您要查找表I中不存在的第I列,因此为null。