还 是不行啊 是这样?? PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt;
还 是不行啊 是这样?? PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt;嗯,你试试看。
不行,原本语句是这样的 SET ZXDZS = CONCAT('SELECT PL',CR_INVKNAME,'VLINK(\'',V_SBTYPE,'\'',',','\'',CR_GRADE,'\'',',','\'',CR_OPERATWAY,'\'',',','\'',CR_ISRNAME,'\'',',','\'',CR_PRMT,'\'',',','\'',CR_PRMC,'\'',');'); 会拼接成一个动态的调用函数的sql语句 然后执行,又返回一个插入语句。且又需要立即执行这个插入语句 不知道怎么搞
还 是不行啊 是这样?? PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt;嗯,你试试看。 试过了,还是原来的效果
还 是不行啊 是这样?? PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt;嗯,你试试看。 试过了,还是原来的效果PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; DEALLOCATE PREPARE stmt; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt2;你再试试看。
还 是不行啊 是这样?? PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt;嗯,你试试看。 试过了,还是原来的效果PREPARE stmt FROM @ZXDZS; EXECUTE stmt; --执行函数后得到一个插入语句insert into aa; DEALLOCATE PREPARE stmt; PREPARE stmt2 FROM @ZXDZS; EXECUTE stmt2; DEALLOCATE PREPARE stmt2;你再试试看。
不行 哦,还是会返回一堆插入语句,但不执行插入
请问一下这个问题解决了吗,我也碰到类似的问题! CREATE TEMPORARY TABLE IF NOT EXISTS tmp201412270843(id INT PRIMARY KEY AUTO_INCREMENT,namee VARCHAR(1000)); SET @sqltxt='insert into tmp201412270843(namee)values(\'wangxiaoxuan\');SELECT * FROM tmp201412270843;'; PREPARE mysql FROM @sqltxt;EXECUTE mysql;这个要是一次执行会报语法错误!请高手指点!
是这样??
PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt;
是这样??
PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt;嗯,你试试看。
SET ZXDZS = CONCAT('SELECT PL',CR_INVKNAME,'VLINK(\'',V_SBTYPE,'\'',',','\'',CR_GRADE,'\'',',','\'',CR_OPERATWAY,'\'',',','\'',CR_ISRNAME,'\'',',','\'',CR_PRMT,'\'',',','\'',CR_PRMC,'\'',');');
会拼接成一个动态的调用函数的sql语句
然后执行,又返回一个插入语句。且又需要立即执行这个插入语句
不知道怎么搞
是这样??
PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt;嗯,你试试看。
试过了,还是原来的效果
是这样??
PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt;嗯,你试试看。
试过了,还是原来的效果PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
DEALLOCATE PREPARE stmt; PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt2;你再试试看。
是这样??
PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt;嗯,你试试看。
试过了,还是原来的效果PREPARE stmt FROM @ZXDZS;
EXECUTE stmt; --执行函数后得到一个插入语句insert into aa;
DEALLOCATE PREPARE stmt; PREPARE stmt2 FROM @ZXDZS;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt2;你再试试看。
不行 哦,还是会返回一堆插入语句,但不执行插入
CREATE TEMPORARY TABLE IF NOT EXISTS tmp201412270843(id INT PRIMARY KEY AUTO_INCREMENT,namee VARCHAR(1000));
SET @sqltxt='insert into tmp201412270843(namee)values(\'wangxiaoxuan\');SELECT * FROM tmp201412270843;';
PREPARE mysql FROM @sqltxt;EXECUTE mysql;这个要是一次执行会报语法错误!请高手指点!