【问题标题】:SQL insert into stored procedure phpmyadminSQL插入存储过程phpmyadmin
【发布时间】:2015-03-30 19:46:57
【问题描述】:

我有以下代码:

CREATE PROCEDURE userAanmaken
(    
IN domeinNummer INT(11),
IN gebruikerNaam VARCHAR(45),
IN gebruikerPass VARCHAR(45),
IN gebruikerEmail VARCHAR(45),
IN gebruikerVN VARCHAR(50),
IN gebruikerTV VARCHAR(10),
IN gebruikerAN VARCHAR(50),
IN gebruikerGS VARCHAR(1),
IN gebruikerOL VARCHAR(30),
IN gebruikerGD DATE
)



BEGIN 

DECLARE lastID INT

INSERT INTO Gebruiker(Domein_idDomeint) 
VALUES (domeinNummer);

SET lastId=LAST_INSERT_ID()

INSERT INTO Inlog (Gebruiker_idGebruiker,UserName,UserPass)
VALUES (lastId,gebruikerNaam,gebruikerPass);

INSERT INTO GGevens (Gebruiker_idGebruiker,Email,Voornaam,Tussenvoeg,Achternaam,Geslacht,Opleiding,GebDatum)
VALUES (lastId,gebruikerEmail,gebruikerVN,gebruikerTV,gebruikerAN,gebruikerGS,gebruikerOL,gebruikerGD);
END;

但它返回错误:

您的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本,以便使用正确的语法 在“插入 Gebruiker(Domein_idDomeint)值(domeinNummer)”附近 在第 21 行 Nieuw phpMyAdmin-scherm openen

I 是一个简单的插入语句...我做错了什么?

【问题讨论】:

  • Domein_idDomeint 是一个列名吗?
  • 是的 :-) 它看起来像这样:i.imgur.com/SalSfQh.png
  • 好的,创建存储过程的第一件事是将分隔符 (scheidingsteken) 更改为分号以外的其他内容,比如说 $$ 并且存储过程的最后一行是 END$$ 而不是 END;
  • 同样的错误:i.imgur.com/dgdUFz0.png

标签: mysql sql phpmyadmin


【解决方案1】:

您在

之后缺少一个分号
DECLARE lastID INT 

还有

SET lastId=LAST_INSERT_ID()

【讨论】:

猜你喜欢
  • 2017-12-02
  • 2020-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多