MySQL存储过程语法问题(Eclipse SQL Explorer)



各位,

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

第8行的这个过程有些不对劲。我试过改变很多关于它的东西并简化它,但我仍然无法让它发挥作用。

我通过Eclipse SQL Explorer插件运行这段代码。

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

有人能明白为什么这不起作用吗?

     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()

最新更新