can't return a result set in the given context

Annie003 2008-10-28 02:11:44
在c语言中执行mysql_query(&mysql,"call pro_t()\n");
delimiter $
DROP PROCEDURE IF EXISTS PRO_T $
CREATE PROCEDURE PRO_T()
BEGIN
set @A=CONCAT('SELECT * FROM A INTO OUTFILE ','''',@PATH_TRAN,'/AAA.TXT''');
PREPARE C FROM @A;
EXECUTE C;
INSERT INTO B VALUES(3);
END $
delimiter ;
就会报can't return a result set in the given context的错误,错误应该是因为有
PREPARE C FROM @A;
EXECUTE C;的缘故,但是怎么改正才能不报错(在mysql环境中这些存储过程是可以执行的)
...全文
651 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dandan3797 2009-06-08
  • 打赏
  • 举报
回复
真的没人知道这个问题么??
liangchen512200359 2008-12-09
  • 打赏
  • 举报
回复
我也遇到了这个问题
Annie003 2008-10-28
  • 打赏
  • 举报
回复
这是在php里面,我的是在c里面,而且我找了一下那些.h文件,没有找到CLIENT_MULTI_STATEMENTS 和CLIENT_MULTI_RESULTS的定义
yyz0832 2008-10-28
  • 打赏
  • 举报
回复
在php里
mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]] )
具体的client_flags
#define CLIENT_LONG_PASSWORD 1 /* new more secure passwords */
#define CLIENT_FOUND_ROWS 2 /* Found instead of affected rows */
#define CLIENT_LONG_FLAG 4 /* Get all column flags */
#define CLIENT_CONNECT_WITH_DB 8 /* One can specify db on connect */
#define CLIENT_NO_SCHEMA 16 /* Don't allow database.table.column */
#define CLIENT_COMPRESS 32 /* Can use compression protocol */
#define CLIENT_ODBC 64 /* Odbc client */
#define CLIENT_LOCAL_FILES 128 /* Can use LOAD DATA LOCAL */
#define CLIENT_IGNORE_SPACE 256 /* Ignore spaces before '(' */
#define CLIENT_PROTOCOL_41 512 /* New 4.1 protocol */
#define CLIENT_INTERACTIVE 1024 /* This is an interactive client */
#define CLIENT_SSL 2048 /* Switch to SSL after handshake */
#define CLIENT_IGNORE_SIGPIPE 4096 /* IGNORE sigpipes */
#define CLIENT_TRANSACTIONS 8192 /* Client knows about transactions */
#define CLIENT_RESERVED 16384 /* Old flag for 4.1 protocol */
#define CLIENT_SECURE_CONNECTION 32768 /* New 4.1 authentication */
#define CLIENT_MULTI_STATEMENTS 65536 /* Enable/disable multi-stmt support */
#define CLIENT_MULTI_RESULTS 131072 /* Enable/disable multi-results */
#define CLIENT_REMEMBER_OPTIONS (((ulong) 1) << 31)
Annie003 2008-10-28
  • 打赏
  • 举报
回复
不行,我在网上看到过这样的回复,但是你mysql_connect()参数个数都不对应啊,而且那个131072表示什么?
yyz0832 2008-10-28
  • 打赏
  • 举报
回复
用mysql_connect("localhost", "root", "admin",1,131072)试试

56,681

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧