使用 CLOSE DATABASE 语句关闭当前数据库的隐式连接。该语句是 SQL ANSI/ISO 标准的扩展。
(这里,只有在执行 CLOSE DATABASE 之前存在显式连接的情况下,DISCONNECT 语句才有效。)
在删除当前数据库之前发出 CLOSE DATABASE 语句。
如果当前数据库支持事务日志记录,并且如果已启动了事务,则必须发出 COMMIT WORK 或 ROLLBACK WORK 语句,然后才能使用 CLOSE DATABASE 语句。
DATABASE stores_demo; . . . CLOSE DATABASE; DROP DATABASE stores_demo;
在 GBase 8s ESQL/C 中,CLOSE DATABASE 语句不能出现在多语句的 PREPARE 操作中。
如果先前的 CONNECT 语句已经和数据库建立了显式连接,而且该连接仍然是当前连接,那么就不能使用 CLOSE DATABASE 语句关闭该显式连接。(可以使用 DISCONNECT 语句关闭该显式连接。)
如果在 WHENEVER 语句调用的 UDR 中使用 CLOSE DATABASE 语句,则应在 ROLLBACK WORK 语句之前指定 WHENEVER SQLERROR CONTINUE 和 WHENEVER SQLWARNING CONTINUE 。如果 ROLLBACK WORK 语句遇到错误或警告,则此操作可防止程序循环。
当发出 CLOSE DATABASE 语句时,任何已声明的游标不再有效。您必须重新声明任何想要使用的游标。
在 ANSI 兼容的数据库中,如果在没有发出 CLOSE DATABASE 、COMMIT WORK 或 DISCONNECT 语句的情况下,以非交互式方式从 DB-Access 退出时没有遇到错误,则数据库服务器自动提交任何打开的事务。