【问题标题】:What's wrong with this MySQL statement: DECLARE @ID INT这个 MySQL 语句有什么问题:DECLARE @ID INT
【发布时间】:2010-10-20 07:22:50
【问题描述】:
DECLARE @ID INT ;

这个语句在 MS SQL Server 上解析得很好,但是给了我

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“DECLARE @ID INT”附近使用正确的语法

有人知道原因吗?

【问题讨论】:

    标签: sql tsql mysql


    【解决方案1】:

    DECLARE 用于存储过程/函数。

    如果您只想为常规查询设置变量,请使用 SET

    【讨论】:

    • -1 @ID 在 MySQL 5.0 上似乎对我不起作用,即使在过程/函数内部也是如此。
    • -1 回答问题?工作得很好,如下所述:dev.mysql.com/doc/refman/5.0/en/declare.html
    • 你只回答了一半。当我在一个过程中尝试DECLARE @ID INT ; 时,我得到:“您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以获取在第 2 行的 '@ID INT ; END' 附近使用的正确语法” .
    【解决方案2】:

    尝试在不带@的情况下命名变量

    DECLARE id INT;
    

    【讨论】:

      【解决方案3】:

      我们不能在普通查询中使用 Declare。

      试试这个:

      SET @ID =(Select id from mytable)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多