DELIMITER $$;DROP PROCEDURE IF EXISTS `sports_shop`.`login`$$CREATE DEFINER=`root`@`localhost` PROCEDURE `login`(in username varchar(40),in userpassword varchar(20),out message varchar(40))
BEGIN
if not exists(select * from client where LoginName=username and Pwd=userpassword)
begin
message = '错误'
endEND$$DELIMITER ;$$
目的就是没这个用户时,输出出错信息,怎么在mysql总是错误呢?
BEGIN
if not exists(select * from client where LoginName=username and Pwd=userpassword)
begin
message = '错误'
endEND$$DELIMITER ;$$
目的就是没这个用户时,输出出错信息,怎么在mysql总是错误呢?
解决方案 »
- 求数据条数!!
- 请教MYSQL里JOIN操作是不是只有被驱动表才会放进BUFFER里面?
- 如何将数据由excel的.csv导入mysql数据库?
- 编写一个MYSQL存储过程,要求使用事物机制,完成简单的数据写入和统计功能
- (LIBMYSQL.DLL):0xC0000005:Access Violation错误,怎么解决?
- mysql4.18如何设置max_allowed_packet = 16M
- winmysqladmin中的mysql.ini中的user和password是干什么用的?
- MYSQL:求记录总数
- mysql: unknown variable 'character_set_server=utf8'按照网上的改了字符集也是不行
- mysql relay log大小问题
- (菜鸟)MyEclipse连接mysql成功,但是创建表的操作无法完成
- 升级mysql4.1升级到5.0
BEGIN
declare v_i int;
select count(*) into v_i from client where LoginName=username and Pwd=userpassword;
if v_i =0 then
set message = '错误';
end if;
END$$ DELIMITER ;
这并不被MYSQL支持message = '错误'
这个也不被支持。
define xxx int default 0;
select count(*) into xxx from client where LoginName=username and Pwd=userpassword;
if xxx =0 then
set message = '错误';
建议参考一下mysql的官方文档MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
当您的问题得到解答后请及时结贴.
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
你现在的代码是什么?
有没有DECLARE v_i INT;
BEGIN
declare vi int;
select count(*) into vi from client where LoginName=username and Pwd=userpassword;
if vi =0 then
set message = '错误';
end if;
END$$ DELIMITER ;现在代码,v_i被我改成了vi,还是提示Undeclared variable: vi