在MySQL5.0中船舰存储过程通不过,提示:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 54实在找不出哪里错了,请高手指点一下代码如下:CREATE DEFINER=`root`@`localhost` PROCEDURE `forum_register`(
in email varchar(30),
in password varchar(16),
in userName char(8),
in qq char(10),
in securityQuestion1 varchar(40),
in securityQuestion2 varchar(40),
in securityAnswer1 varchar(40),
in securityAnswer2 varchar(40),
in headPicture blob,
in registerTime datetime,
in participatedTopicsCount int,
in createdTopicsCount int,
in managingSectionID smallint,
in currentUploadSize float,
in state char(1)
)
begin
insert into forum_users(
用户名,
邮箱,
参与主题数,
发起主题数,
密码,
QQ,
头像,
注册时间,
密保问题1,
密保答案1,
密保问题2,
密保答案2,
管理版块ID,
当前上传容量,
状态
)
values(
userName,
email ,
participatedTopicsCount ,
createdTopicsCount,
password,
qq,
headPicture ,
registerTime,
securityQuestion1,
securityAnswer1 ,
securityQuestion2 ,
securityAnswer2,
managingSectionID,
currentUploadSize,
state
);
SELECT LAST_INSERT_ID();
end
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 54实在找不出哪里错了,请高手指点一下代码如下:CREATE DEFINER=`root`@`localhost` PROCEDURE `forum_register`(
in email varchar(30),
in password varchar(16),
in userName char(8),
in qq char(10),
in securityQuestion1 varchar(40),
in securityQuestion2 varchar(40),
in securityAnswer1 varchar(40),
in securityAnswer2 varchar(40),
in headPicture blob,
in registerTime datetime,
in participatedTopicsCount int,
in createdTopicsCount int,
in managingSectionID smallint,
in currentUploadSize float,
in state char(1)
)
begin
insert into forum_users(
用户名,
邮箱,
参与主题数,
发起主题数,
密码,
QQ,
头像,
注册时间,
密保问题1,
密保答案1,
密保问题2,
密保答案2,
管理版块ID,
当前上传容量,
状态
)
values(
userName,
email ,
participatedTopicsCount ,
createdTopicsCount,
password,
qq,
headPicture ,
registerTime,
securityQuestion1,
securityAnswer1 ,
securityQuestion2 ,
securityAnswer2,
managingSectionID,
currentUploadSize,
state
);
SELECT LAST_INSERT_ID();
end
delimiter //
CREATE DEFINER=`root`@`localhost` PROCEDURE `forum_register`(
in email varchar(30),
in password varchar(16),
in userName char(8),
in qq char(10),
in securityQuestion1 varchar(40),
in securityQuestion2 varchar(40),
in securityAnswer1 varchar(40),
in securityAnswer2 varchar(40),
in headPicture blob,
in registerTime datetime,
in participatedTopicsCount int,
in createdTopicsCount int,
in managingSectionID smallint,
in currentUploadSize float,
in state char(1)
)
begin
insert into forum_users(
用户名,
邮箱,
参与主题数,
发起主题数,
密码,
QQ,
头像,
注册时间,
密保问题1,
密保答案1,
密保问题2,
密保答案2,
管理版块ID,
当前上传容量,
状态
) values(
userName,
email ,
participatedTopicsCount ,
createdTopicsCount,
password,
qq,
headPicture ,
registerTime,
securityQuestion1,
securityAnswer1 ,
securityQuestion2 ,
securityAnswer2,
managingSectionID,
currentUploadSize,
state
);
SELECT LAST_INSERT_ID();
end
//
Query OK, 0 rows affected (0.06 sec)mysql> delimiter //
mysql> CREATE PROCEDURE `forum_register`(
-> in email varchar(30),
-> in password varchar(16),
-> in userName char(8),
-> in qq char(10),
-> in securityQuestion1 varchar(40),
-> in securityQuestion2 varchar(40),
-> in securityAnswer1 varchar(40),
-> in securityAnswer2 varchar(40),
-> in headPicture blob,
-> in registerTime datetime,
-> in participatedTopicsCount int,
-> in createdTopicsCount int,
-> in managingSectionID smallint,
-> in currentUploadSize float,
-> in state char(1)
-> )
-> begin
-> insert into forum_users(
-> 用户名,
-> 邮箱,
-> 参与主题数,
-> 发起主题数,
-> 密码,
-> QQ,
-> 头像,
-> 注册时间,
-> 密保问题1,
-> 密保答案1,
-> 密保问题2,
-> 密保答案2,
-> 管理版块ID,
-> 当前上传容量,
-> 状态
->
->
-> )
-> values(
-> userName,
-> email ,
-> participatedTopicsCount ,
-> createdTopicsCount,
-> password,
-> qq,
-> headPicture ,
-> registerTime,
-> securityQuestion1,
-> securityAnswer1 ,
-> securityQuestion2 ,
-> securityAnswer2,
-> managingSectionID,
-> currentUploadSize,
-> state
-> );
-> SELECT LAST_INSERT_ID();
-> end
-> //
Query OK, 0 rows affected (0.34 sec)mysql> delimiter ;
mysql>
call forum_register('1','2','3','463127310','1','1','2','2',null,'2009-010-05 15:25:00',0,0,null,1024,'0');
但在命令行就是不行,提示:
ERROR 1457 (HY000): Failed to load routine aiforumdb.forum_register.The table mysql.proc is missing, corrupt, or contains bad data(internal code -6)
mysql>
顺便问句,怎么把mysql命令行的内容复制下来,我用鼠标右键【标记】了然后选中要复制的内容,按Ctrl+c,然后粘贴的数据总是从只有一半(从中间分开左面的)?
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: FUNCTION forum_register does not exist
会什么会出现找不到存储过程呢?
怎么提示错误信息时function?你是怎么调用的?
检查一下mysql数据库中有没有proc表。
callableStatement.executeQuery();mysql中有proc表,而且forum_register也在里面
2。 是在同一客户机上登录吗? (从不同的IP联MYSQL会有不同的权限)
3。你的java connector 的版本是否兼容?