繁体   English   中英

在SQL中声明@变量返回错误

[英]Declare @ variable in SQL returning an error

我试图在SQL中声明一个变量。 我都尝试过

declare @mean INT;
set @mean = .5;

declare @mean INT
set @mean = .5

我不断收到此错误:

在“”之后发现意外的令牌“”。 预期的令牌可能包括:“声明@mean INT”

如果要声明您的变量是使用'@'定义的松散类型的用户定义变量,则可以简单地执行以下操作:

SET @mean := .5 

如果不是,那么您可能想在存储过程中定义一个变量,那么您可以定义如下:

DECLARE  mean INT;
SET mean = .5;      // not sure you mean INT here though?

您可能会发现此SO链接对于描述我的sql变量中的差异很有用 另外请查阅mysql手册( 用户变量 )/( 本地变量 )。

我认为这里的一些混乱可能源于T-SQL与Mysql使用的语法不同,但是请阅读上面的链接并使用最适合您的方法。

如果这是在存储过程中,则不需要@作为局部变量。 如果这只是您要创建的会话变量,则不需要DECLARE 只是SET @mean := 5;

我不是很肯定,但是我认为DECLARE在存储过程之外甚至可能都不有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM