我是新来的,所以请耐心等待。我创建了以下存储过程。
DELIMITER //
CREATE PROCEDURE REMARK()
BEGIN
#declare variable
DECLARE v_newid, v_oldid VARCHAR(255);
DECLARE done INT DEFAULT FALSE;
#declare cursor
DECLARE cur1 CURSOR FOR
SELECT new, old
FROM mydb.`tbl_id`;
#declare handle
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
#open cursor
OPEN cur1;
#starts the loop
the_loop: LOOP
#get the values of each column into our variables
FETCH cur1 INTO v_newid, v_oldid;
IF done THEN
LEAVE the_loop;
END IF;
#Insert it
INSERT INTO cherrycasino.`tbl_remarks` (player_id, user_tool_id, text)
VALUES (v_newid, '103', 'User Copied from ES id:v_oldid');
END LOOP the_loop;
CLOSE cur1;
END //
DELIMITER ;
除了一件事之外,它应该正常工作。我想使用从光标得到的变量在tbl_remarks中插入一些文本。
VALUES (v_newid, '103', 'User Copied from ES id:v_oldid');
我无法将变量v_oldid转换回来。我在这里错过了一些逃脱序列吗?
答案 0 :(得分:0)
原来答案是我想要使用的字符串和变量的简单连接。
VALUES (v_newid, '103', CONCAT('User Copied from ES id:', v_oldid));