返回信息流使用存储过程写一个sql脚本,实现修改数据库表主键的功能,下面是简单测试的脚本,alter语句中使用变量出问题,请问怎么破?exec直接提示出错。。
下面是测试脚本:
DELIMITER //
DROP PROCEDURE IF EXISTS chgkey //
CREATE PROCEDURE chgkey()
BEGIN
SET @curID = 2;
//查表,将查询结果赋值给变量
SELECT table_prikey FROM acc_temp WHERE id = @curID;
SELECT @prikey := table_prikey FROM acc_temp WHERE id = @curID;
SELECT @tablename := table_name FROM acc_temp WHERE id = @curID;
//测试变量是否赋值成功
SELECT * FROM acc_temp WHERE table_prikey = @prikey;
SELECT * FROM acc_temp WHERE table_name = @tablename;
SELECT @prikey;
SELECT @tablename;
//更新表主键
ALTER TABLE @tablename DROP PRIMARY KEY,ADD PRIMARY KEY (@prikey, adapt_point);
END;//
这是一条镜像帖。来源:北邮人论坛 / database / #7398同步于 2013/4/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖
Mysql脚本问题--alter语句中如何使用变量
xwl1119
2013/4/9镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。