GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 199 -
可以选择禁用消息链接。
在禁用消息链接之前,请考虑以下情况:
l
一些 SQL 语句需要立即回复。如果禁用消息链接,请在限制的 SQL 语句完成后重
新启动 OPTMSG 功能。
l
如果执行调试。可以在试图确定每个 SQL 语句应答时禁用 OPTMSG 功能。
l
如果启用 OPTMSG,该消息会在数据库服务器中列队,但是不会发送进行处理。考
虑在程序中的最后一条 SQL 语句之前禁用消息链接,
以确保数据库服务器在应用程
序退出之前处理所有消息。
l
如果禁用消息链接,必须在需要它的 SQL 语句之后立即重置
SQL_INFX_ATTR_OPTMSG 属性,来避免意外链接。
以下示例显示如何禁用消息链接,通过在 DELETE 语句之后放置
SQL_INFX_ATTR_OPTMSG 属性。
如果将该属性放在删除语句后,
则驱动程序可以
在下一条 SQL 语句之前时,刷新所有排队的消息:
SQLSetStmtOption(hstmt, SQL_INFX_ATTR_OPTMSG, 1);
SQLExecDirect(hstmt, (unsigned char *)
"delete from customer", SQL_NTS);
SQLSetStmtOption(hstmt, SQL_INFX_ATTR_OPTMSG, 0);
SQLExecDirect(hstmt, (unsigned char *)
"create index ix1 on customer (zipcode)", SQL_NTS);
意外消息链接会使其很难确定哪一个链接的语句失败。
在 CREATE INDEX 语句中,驱动程序将 DELETE 和 CREATE INDEX 语句发送
到数据库服务器。