mysql> delimiter // mysql> mysql> CREATE PROCEDURE sign ( -> IN user_mail CHAR(20), -> IN user_name CHAR(20), -> IN user_pw CHAR(20), -> OUT user_id INT -> ) -> BEGIN -> -- 创建两个变量, 也就是这块提示有语法错误 -> DECLARE v_id INT(10); -> DECLARE v_result INT(10) DEFAULT 0; -> SELECT u_id FROM user WHERE u_mail = user_mail INTO v_id; -> IF ( v_id IS NULL ) THEN -> INSERT INTO user (u_mail, u_name, u_password, u_signTime) -> VALUES ('user_mail', 'user_name', 'user_pw', now); -- acmain: missing the value for last column -> SELECT u_id INTO v_result FROM user WHERE u_mail = user_mail ; -- acmain: syntax is "select col into var ..." -> END IF; -> SELECT v_result INTO user_id; -> END; -> // Query OK, 0 rows affected (0.44 sec)mysql>
INSERT INTO user (u_mail, u_name, u_password, u_signTime) VALUES ('user_mail', 'user_name', 'user_pw', );这句多了个,
mysql>
mysql> CREATE PROCEDURE sign (
-> IN user_mail CHAR(20),
-> IN user_name CHAR(20),
-> IN user_pw CHAR(20),
-> OUT user_id INT
-> )
-> BEGIN
-> -- 创建两个变量, 也就是这块提示有语法错误
-> DECLARE v_id INT(10);
-> DECLARE v_result INT(10) DEFAULT 0;
-> SELECT u_id FROM user WHERE u_mail = user_mail INTO v_id;
-> IF ( v_id IS NULL ) THEN
-> INSERT INTO user (u_mail, u_name, u_password, u_signTime)
-> VALUES ('user_mail', 'user_name', 'user_pw', now); -- acmain: missing the value for last column
-> SELECT u_id INTO v_result FROM user WHERE u_mail = user_mail ; -- acmain: syntax is "select col into var ..."
-> END IF;
-> SELECT v_result INTO user_id;
-> END;
-> //
Query OK, 0 rows affected (0.44 sec)mysql>
VALUES ('user_mail', 'user_name', 'user_pw', );这句多了个,