mysql 新建存储过程中容易出错的地方

Posted 冬月二四

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 新建存储过程中容易出错的地方相关的知识,希望对你有一定的参考价值。

DELIMITER $$
USE `tongliaograin`$$
DROP PROCEDURE IF EXISTS `A_Sys_GetAdminValidate`$$
CREATE DEFINER=`root`@`%` PROCEDURE `A_Sys_GetAdminValidate`(IN `sLoginName` VARCHAR(100),IN `sPassword` VARCHAR(100),IN `sIP` VARCHAR(100))
BEGIN
DECLARE nNum INT DEFAULT 0;
DECLARE nAdminID INT DEFAULT 0;
DECLARE slogcontent VARCHAR(100) DEFAULT "";
SELECT * FROM sys_admin WHERE LoginName = sLoginName AND `password`=sPassword;
SELECT COUNT(*) INTO nNum FROM sys_admin WHERE LoginName = sLoginName AND `password`=sPassword;
IF(nNum > 0) THEN 
SELECT CAST(AdminID AS SIGNED) INTO nAdminID FROM sys_admin WHERE LoginName = sLoginName AND `password`=sPassword;
SET slogcontent = CONCAT(‘【用户登录】后台用户:‘,sLoginName,‘IP地址为:‘,sIP,‘ 登录成功‘);
CALL A_SysLog_Add(12,nAdminID,slogcontent);
END IF;
END$$

DELIMITER ;

 

1、开头和结尾需要用到 DELIMITER $$  和 DELIMITER ;

2、存储过程参数,必须有in out  inout ,参数名必须用 “·”符号包起来,而且必须声明参数类型及其长度

 

以上是关于mysql 新建存储过程中容易出错的地方的主要内容,如果未能解决你的问题,请参考以下文章

在mysql中运行存储过程时出错

MySQL存储过程的“异常处理”

C#链接mysql 新手容易出错的问题

尝试在 phpmyadmin 中执行 MYSQL 存储过程时出错

oracle存储过程提示编译完成但存在错误,如何查看错误

[转]MYSQL 创建存储过程