我在mysql中使用存储过程来更新数据,但是当我调用该函数时,它会更新整行而不是一行
CREATE DEFINER=`root`@`localhost` PROCEDURE `UpdVend`(
in vid nvarchar (50),
in vName nvarchar(100),
in addres nvarchar(250),
in phone int(11),
in email nvarchar(50),
in pan nvarchar(100)
)
BEGIN
SET SQL_SAFE_UPDATES=0;
UPDATE visitor SET VName = vName, Addres = addres, Phone = phone, Email = email,Pan = pan WHERE VId = vid;
END
当我打电话给它时,它会更新整行。
在此之前它显示有关更新安全模式的错误1175。我用SET SQL_SAFE_UPDATES=0
解决了这个问题。
答案 0 :(得分:0)
一个简单的改变及其工作......
CREATE DEFINER=`root`@`localhost` PROCEDURE `UpdVend`(
in vid nvarchar (50),
in vName nvarchar(100),
in addres nvarchar(250),
in phone int(11),
in email nvarchar(50),
in pan nvarchar(100)
)
BEGIN
UPDATE visitor v SET VName = vName, Addres = addres, Phone = phone, Email = email,Pan = pan WHERE v.VId = vid;
END