MySql用户访问更新程序

时间:2016-08-17 08:53:49

标签: mysql

我想制作一个程序来更新存储我的用户详细信息的表,包括IP地址。它还需要更新用户访问表,如下所示。

CREATE DEFINER=`root`@`localhost` PROCEDURE `UpDateIPAddr`(IN K int(11), IN `V`varchar(16))
BEGIN                      
  RENAME USER (select UName from Employee where TKey = K)@(select IPAddr from Employee where TKey = K) TO (select UName from Employee where TKey = K)@V;
  UPDATE timecard.Settings SET `IPAddr`= V WHERE `TKey`= K;
END

我该怎么做

1 个答案:

答案 0 :(得分:0)

您必须以字符串格式汇编rename user语句并使用prepared statement执行它,因为您无法在重命名用户语句中直接使用子查询。

使用select ... into ...语句将表中的数据分配给变量。