在一个数据库(Database)中含有基本表、视图、索引等数据库对象。数据库的创建、选择是在 GBase 8a 中开始数据库设计、内容查找的第一步。
1.创建数据库
在打开一个 GBase 8a 后,我们首先要做的第一步是创建一个全新的数据库。在 GBase 8a中我们可以创建 4 种类型的数据库。
(1)不记录日志,其语法结构为:
CREATE DATABASE <数据库名>
(2)缓冲式的记录日志[SQL 语句不一定在事务之中,拥有者名字(owner name)不被用于对象的解析]:
CREATE DATABASE <数据库名> WITH BUFFERED LOG IN “<事务处理日志文件路径>”
(3)无缓冲式的记录日志 (SQL 语句不一定在事务之中,拥有者名字(owner name)
不被用于对象的解析):
CREATE DATABASE <数据库名> WITH LOG IN “<事务处理日志文件路径>”
(4)ANSI(记录日志时无缓冲,SQL 语句总在事务之中,拥有者名字(owner name)被用于对象的解析):
CREATE DATABASE <数据库名> WITH LOG MODE ANSI IN “<事务处理日志文件路径>”
这 4 种语句均创建了一个名为“<数据库名>.dbs”的目录,存取权限由创建者赋予(GRANT)的权限设定,若无日志文件就不能使用 BEGIN WORK 等事务语句(可用START DATABASE 语句来改变)。
例 1.1 创建数据库 Stores5:
create database Stores5 with bufferd log in”/usr/Informix/Log/Stores5.Log”;
2.选择进入数据库
创建了该数据库后 GBase 8a 会自动进入该数据库。若非第一次创建该数据库,则需选择进入该数据库后才能对表和数据进行操作。进入该数据库的语法格式如下:
DATABASE <数据库名> [EXCLUSIVE]
存取当前目录和数据库存储路径指定的目录下的数据库,其中 EXCLUSIVE 表示独占状态,使其只能使单个程序使用,若此时其他用户正在使用该数据库,则该操作将返回错误,其他程序就不能打开数据库。
例 1.2 选择进入数据库 Stores5:
database Stores5;
3.关闭退出数据库
进入数据库后若想退出该数据库,则需输入关闭当前数据库的命令,其语法格式如下:
CLOSE <数据库名>
注意在此语句后,只有以下语句是合法的:CREATE DATABASE;DATABASE;DROP DATABASE;ROLLFORWARD DATABASE,如果想删除数据库,则在之前必须使用 CLOSE
关闭数据库。
例 1.3 退出数据库 Stotres5:
close database;
4.删除数据库
若要删除一个数据库,则其语法格式如下:
DROP DATABASE <数据库名>
能执行该操作的用户需是数据库管理员或该数据库所有表的拥有者。删除前需退出当前数据库,在事务处理过程中不能使用此语句,回滚操作也不能将数据库恢复。
例 1.4 删除数据库 Stores5:
drop database Stores5;