GBase8s数据库CLOSE DATABASE 语句

使用 CLOSE DATABASE 语句关闭当前数据库的隐式连接。该语句是 SQL ANSI/ISO 标准的扩展。

用法

当发出 CLOSE DATABASE 语句时,紧接其后您仅能发出以下 SQL 语句:

⚫CONNECT

⚫CREATE DATABASE

⚫DATABASE

⚫DROP DATABASE

⚫DISCONNECT

(这里,只有在执行 CLOSE DATABASE 之前存在显式连接的情况下,DISCONNECT 语句才有效。)

在删除当前数据库之前发出 CLOSE DATABASE 语句。

如果当前数据库支持事务日志记录,并且如果已启动了事务,则必须发出 COMMIT WORK 或ROLLBACK WORK 语句,然后才能使用 CLOSE DATABASE 语句。

以下示例显示了如何使用 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 退出时没有遇到错误,则数据库服务器自动提交任何打开的事务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值