测试环境:Windows XP
 
DB2版本信息
D:DB2BIN>db2level
DB21085I 实例 "DB2" 使用 "32" 位和 DB2 代码发行版 "SQL09050",级别标识为"03010107"。
参考标记为 "DB2 v9.5.0.808"、"s071001" 和 "NT3295",修订包为 "0"。
产品使用 DB2 副本名 "DB2COPY1" 安装在 "D:DB2" 中。
D:DB2BIN>db2licm -l
Product name: "DB2 Express-C"
License type: "无担保"
Expiry date: "永久"
Product identifier: "db2expc"
Version information: "9.5"
Max number of CPUs: "2"
D:DB2BIN>
 
创建数据库
第一步:安装DB2(略)
 
第二步:配置好相关目录
mkdir d:db2study
db2set DB2_CREATE_DB_ON_PATH=YES
注:我创建的数据库要存放在d:db2study目录下,因为我要在create 脚本中指定数据库路径,所以需要激活DB2_CREATE_DB_ON_PATH注册表项.
 
第三步:启动DB2实例
D:DB2BIN>db2
(c) Copyright IBM Corporation 1993,2007
DB2 客户机 9.5.0 的命令行处理器
可从命令提示符处发出数据库管理器命令和 SQL 语句。例如:
db2 => connect to sample
db2 => bind sample.bnd
要获得一般帮助,输入:?。
要获得命令帮助,输入:? command,其中 command 可以是
数据库管理器命令的前几个关键字。例如:
? CATALOG DATABASE 用于关于 CATALOG DATABASE 命令的帮助
? CATALOG 用于关于所有 CATALOG 命令的帮助。
要退出 db2 交互方式,在命令提示符处输入QUIT。在非交互方式下,所有命令都必须以“db2”作前缀。
要列出当前命令选项设置,输入 LIST COMMAND OPTIONS。
要获取更详细的帮助,请参阅 Online Reference Manual。
db2 => db2start
DB20000I DB2START命令成功完成。
db2 =>
第四步:创建数据库
db2 => create database study automatic storage no on 'd:db2study' alias study using codeset GBK territory CN collate using system pagesize 8192 CATALOG TABL ESPACE MANAGED BY DATABASE USING ( FILE 'D:DB2studycatalog.dbf' 25600 ) USER TABLESPACE MANAGED BY DATABASE USING ( FILE 'D:DB2studystudy.dbf' 5120 )
TEMPORARY TABLESPACE MANAGED BY DATABASE USING ( FILE 'D:DB2studytemp.dbf' 5120 ) WITH 'STUDY'
DB20000I CREATE DATABASE命令成功完成.
db2 =>
 
注:在这一步中,catalog表空间的size要稍微指定的大些(比如100M),否则可能会遇到类似如下的错误信息:
SQL1043C “数据库服务”不能初始化系统目录。返回了错误 "-289"。
说明: 在初始化系统目录期间,CREATE DATABASE 命令失败。
用户响应: 记录消息号 (SQLCODE) 和此消息中的错误。
如果跟踪是活动的,那么在操作系统命令提示符处调用"独立跟踪设施"。然后与技术服务代表联系,并提供以下信息:
* 环境:应用程序
* 需要的信息:
* 问题描述
* SQLCODE 或消息号和错误标识
* 如果可能的话,还应提供 SQLCA 内容
* 如果可能的话,还应提供跟踪文件。
 
测试新建的数据库
 
连接到刚刚创建的study数据库
db2 => connect to study
数据库连接信息
数据库服务器 = DB2/NT 9.5.0
SQL 授权标识 = ZHANGRP
本地数据库别名 = STUDY
 
创建一张表
db2 => create table test(id integer, name varchar(20))
DB20000I SQL命令成功完成。

查看表结构
db2 => describe select * from zhangrp.test
列信息
列数:2
SQL 类型 类型长度 列名 名称长度
------------------ ----------- --------- ------- -----
497 INTEGER 4 ID 2
449 VARCHAR 20 NAME 4
db2 =>

DML测试
db2 => insert into test values (1, 'abc')
DB20000I SQL命令成功完成。
 
db2 => select * from test
ID NAME
-------- --------------
1 abc
1 条记录已选择。
 
db2 => update test set id=100,name='def' where id=1
DB20000I SQL命令成功完成。
db2 => select * from test
ID NAME
-------- --------------
100 def
1 条记录已选择。
 
db2 => delete from test
DB20000I SQL命令成功完成。
db2 => select * from test
ID NAME
-------- --------------
0 条记录已选择。
db2 =>
 
删除表
db2 => drop table test
DB20000I SQL命令成功完成。
db2 =>
 
删除数据库
 
db2 => connect reset
DB20000I SQL命令成功完成。
db2 => drop database study
DB20000I DROP DATABASE命令成功完成。
db2 =>