【发布时间】:2018-04-06 22:26:08
【问题描述】:
我是 MySQL 存储过程的新手。不知道为什么我会收到以下错误。请帮忙调试一下。
1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的 'INTO this_user_id, this_user_fullname FROM user_master WHERE user_username = @th' 附近使用正确的语法
DELIMITER $$
CREATE PROCEDURE loginUser(IN this_user_name VARCHAR(100), IN this_user_password VARCHAR(100), OUT this_user_id BIGINT(11), OUT this_user_fullname VARCHAR(100))
BEGIN
IF NOT EXISTS (SELECT user_id, user_full_name INTO this_user_id, this_user_fullname FROM user_master WHERE user_username = this_user_name AND user_password = this_user_password) THEN
SET this_user_id = NULL;
SET this_user_fullname = NULL;
END IF;
END$$
我的表结构是
表名:user_master
user_id bigint(11) 否
user_full_name varchar(100) 是 NULL
user_username varchar(60) 是 NULL
user_password varchar(45) 是 NULL
user_security_question varchar(225) 是 NULL
user_security_answer varchar(255) 是 NULL
user_salt varchar(30) 是 NULL
user_status enum('ACTIVE', 'SUSPENDED', 'PENDING') 是 NULL
user_last_login_time 时间戳 是 NULL
user_last_logout_time 时间戳 是 NULL
索引文档
PRIMARY BTREE 是 否 user_id 4 A 否
user_username_UNIQUE BTREE 是 否 user_username 4 A 是
【问题讨论】:
标签: mysql sql stored-procedures