MySQL存储过程语法问题(Eclipse SQL资源管理器)

MySQL存储过程语法问题(Eclipse SQL资源管理器),mysql,eclipse,stored-procedures,mysql-error-1064,Mysql,Eclipse,Stored Procedures,Mysql Error 1064,晚上的朋友们 我在为MySql编写存储过程时遇到困难,我已经阅读了一些教程,因为我更习惯于为Sybase编写存储过程 8号线附近的这个程序有点不对劲。我试着改变很多关于它的东西并简化它,但我仍然无法让它工作 我正在通过EclipseSqlExplorer插件运行这段代码 开始怀疑服务器端是否有一些设置 有谁知道这不起作用的原因吗 DROP PROCEDURE IF EXISTS myDB.myProc; GO CREATE PROCEDURE myProc(

晚上的朋友们

我在为MySql编写存储过程时遇到困难,我已经阅读了一些教程,因为我更习惯于为Sybase编写存储过程

8号线附近的这个程序有点不对劲。我试着改变很多关于它的东西并简化它,但我仍然无法让它工作

我正在通过EclipseSqlExplorer插件运行这段代码

开始怀疑服务器端是否有一些设置

有谁知道这不起作用的原因吗

     DROP PROCEDURE IF EXISTS myDB.myProc;
     GO
     CREATE PROCEDURE myProc(
        IN p1 INT,
        IN p2 INT,
        IN p3 INT,
        IN p4 INT,
        IN p5 TEXT)
     BEGIN
        DECLARE dateToday DATETIME;
        SELECT dateToday = GETDATE();

        INSERT INTO myTable(id_p1, 
                            id_p2, 
                            id_p3, 
                            id_p4,
                            id_p5,
                            id_p6)
                    VALUES(p1,
                            p2,
                            p3,
                            p4,
                            p5,
                            dateToday);    
     END
任何帮助都将不胜感激:)

干杯


Dave McB

我不确定MySQL sintax,但变量不应该是这样的?:

DECLARE @dateToday DATETIME;
Set @dateToday = NOW();

另外,我认为
Getdate()
是用于
MSSQL
,您应该在
MySQL

中使用
NOW()
,使用@flag会在“@dateToday DATETIME”附近抛出语法错误,而不是通常的近“”,我也习惯了@method,更容易阅读,尽管MySQL似乎不喜欢它…:(为NOW()技巧干杯!GETDATE()不过是体验中的一次暗中尝试lol:)