我正在尝试将存储过程从MS SQL转换为MySQL,因此在MSSQL中我使用的参数默认值为NULL
`ALTER PROCEDURE [dbo].[sp_GLB_Users_S]
(
@selType int =NULL,
@ID int =NULL,
@LoginID varchar(20) =NULL,
@UserCode varchar(50) =NULL,
@UserCategory int =NULL,
@UserName varchar(150) =NULL,
@EMail varchar(100) =NULL,
@IsActive bit =NULL
)`
如何在MySQL中使用NULL接受的参数
`CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_GLB_Users_S`(
IN selType INTEGER,
IN ID INTEGER,
IN LoginID VARCHAR(20),
IN UserCode VARCHAR(50),
IN UserCategory INTEGER,
IN UserName VARCHAR(150),
IN EMail VARCHAR(100),
IN IsActive BOOLEAN
)`
答案 0 :(得分:4)
简短的回答是,即使在5.7中,MySQL仍然对常规参数缺乏对默认值的支持。
使用会话变量而不是实际参数有一种解决方法,但个人恕我直言,它不值得。