PROCEDURE can't return a result set in the given context

来源:互联网 发布:ak74知乎 编辑:程序博客网 时间:2024/06/13 06:08

VC++调用mysql的问题:PROCEDURE can't return a result set in the given context
存储过程如下:
drop procedure if exists aabb;//
create procedure aabb()
BEGIN
SET @Code = 'create table abc1(s INT)';
PREPARE dafa_fa FROM @Code;
EXECUTE dafa_fa;
END;//

测试所有存储过程中只要带 EXECUTE ***;( EXECUTE dafa_fa;)”等这样的语句,VC++就报PROCEDURE can't return a result set in the given context 这样的错。
通过该“http://forums.mysql.com/read.php?37,142565,159599#msg-159599”链接的启发:

http://forums.mysql.com/read.php?37,142565,142565#msg-142565
http://forums.mysql.com/read.php?37,142565,159599#msg-159599
找到原因了,原来我装的myodbc是MyODBC-3.51.11-2-win.exe,后来安装mysql-connector-odbc-3.51.30-win32就可以了(实际上装 3.51.12即可)。

同一问题链接:
http://topic.csdn.net/u/20120308/13/354877bd-4699-46ab-b68f-92b1e00d7af9.html?seed=1000371096&r=77822098#r_77822098