二、 编目
1、 节点(主机)
a) 列出节点
db2 list node directory
b) 编目远程结点
---节点名作为编目到本地的实例名称
db2 catalog tcpip node EAST remote 9.181.138.233 server 50000 c) 编目本地节点,当本地数据库出现多于一个实例时,其余的实例都会在
本地进行编目结点
db2 CATALOG LOCAL NODE test INSTANCE test SYSTEM TOP-GONGSHANG OSTYPE NT d) 删除节点
db2 uncatalog node test
2、 实例
a) 建立数据库实例
db2icrt
b) 列出所有的数据库实例
db2ilist
c) 得到当前的数据库实例
db2 get instance
d) 删除数据库实例
db2idrop
3、 数据库 a) 系统数据库目录
---列出系统数据库目录,系统数据库目录与具体的环境变量(db2instance)无关.
db2 list db directory
b) 本地数据库目录
---列出本地数据库目录,本地数据库目录与具体的环境变量(db2instance)有关.
db2 list db directory on d:
c) 在系统数据库目录中编目数据库
db2 catalog database ISOURCE at node EAST
d) 删除系统数据库编目
db2 uncatalog database topicis
e) 删除本地数据库编目
db2 drop database test1
4、 数据库的完整性
a) 在系统数据库目录中对本地数据库进行编目
只有在系统数据库目中对本地数据库进行了编目才能把数据库挂载到实例上,才能对数据库执行删除的操作。
b) 数据库和实例的交叉对应关系
在对数据库进行了系统编目后就可以挂载到实例上(远程节点
除外),挂载的实例可以和数据库创建时所在的实例不同。
三、 常用命令
1、 建立数据库DB2_GCB
CREATE DATABASE DB2_GCB ON G: ALIAS DB2_GCB USING CODESET GBK
TERRITORY CN COLLATE USING SYSTEM DFT_EXTENT_SZ 32
2、 建立SAMPLE数据库
DB2SAMPL
DB2SAMPL F:(指定安装盘)
3、 建立工具目录数据库
DB2 CREATE TOOLS CATALOG CC CREATE NEW DATABASE TOOLSDB
4、 连接数据库
CONNECT TO SAMPLE1 USER DB2ADMIN USING 8301206 NEW DB2ADMIN CONFIRM DB2ADMIN
5、 插入记录,修改记录,删除记录
INSERT INTO ZJT_TABLES SELECT * FROM TABLES INSERT INTO ZJT_VIEWS SELECT * FROM VIEWS
INSERT INTO TEST(ID,PHONE) VALUES(1,’5’) UPDATE TEST SET PHONE=’65356675’ WHERE ID=1 DELETE FROM TEST WHERE ID=1
6、 建立用户、建立表别名
CREATE ALIAS DB2ADMIN.TABLES FOR SYSSTAT.TABLES CREATE ALIAS DB2ADMIN.VIEWS FOR SYSCAT.VIEWS
CREATE ALIAS DB2ADMIN.COLUMNS FOR SYSCAT.COLUMNS CREATE ALIAS GUEST.COLUMNS FOR SYSCAT.COLUMNS
GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ ROUTINE ON DATABASE TO USER GUEST
GRANT CREATEIN,DROPIN,ALTERIN ON SCHEMA DB2ADMIN TO USER GUEST WITH GRANT OPTION
7、 建立、更改、删除表结构
CREATE TABLE table_name(
column1 DATATYPE [NOT NULL] [NOT NULL PRIMARY KEY], column2 DATATYPE [NOT NULL], ...)
CREATE TABLE ZJT_TABLES AS
(SELECT * FROM TABLES) DEFINITION ONLY CREATE TABLE ZJT_VIEWS AS
(SELECT * FROM VIEWS) DEFINITION ONLY
ALTER TABLE table_name ADD COLUMN column_name DATATYPE ALTER TABLE table_name ADD PRIMARY KEY (column_name) ALTER TABLE table_name DROP PRIMARY KEY (column_name)
DROP table table_name
ALTER TABLE TABLE_NAME1 ADD CONSTRAINT CONSTRAINT_NAME
FOREIGN KEY (COLUMN1, COLUMN2, COLUMN3) REFERENCES TABLE_NAME2 (COLUMN4, COLUMN5,COLUMN6) ON DELETE RESTRICT
8、 建立触发器
CREATE TRIGGER \ NO CASCADE BEFORE DELETE ON \
TAFF\
REFERENCING OLD AS OLDSTAFF FOR EACH ROW MODE DB2SQL WHEN(OLDSTAFF.JOB = 'SALES') BEGIN
ATOMIC SIGNAL SQLSTATE '75000' ('SALES STAFF CANNOT BE DELETED... SEE THE DO_NOT_DEL_SALES TRIGGER.'); END;
9、 建立索引
A、 一般索引
CONNECT TO SAMPLE
CREATE INDEX DB2ADMIN.IDX_STAFF_NAME ON STAFF (\ASC) PCTFREE 10 MINPCTUSED 10 COLLECT STATISTICS CONNECT RESET
B、 唯一索引
CONNECT TO SAMPLE
CREATE UNIQUE INDEX DB2ADMIN.UIDX_STAFF_ID ON STAFF (ID ASC) PCTFREE 10 MINPCTUSED 10 COLLECT STATISTICS CONNECT RESET
C、 双向索引
CONNECT TO SAMPLE
CREATE INDEX DB2ADMIN.BIDX_STAFF_SALARY ON STAFF (SALARY ASC) PCTFREE 10 MINPCTUSED 10 ALLOW REVERSE SCANS COLLECT DETAILED STATISTICS CONNECT RESET
D、 簇索引
CONNECT TO SAMPLE;
CREATE INDEX DB2ADMIN.CIDX_STAFF_DEPT ON STAFF (DEPT ASC) CLUSTER PCTFREE 10 MINPCTUSED 10 COLLECT SAMPLED DETAILED STATISTICS
CONNECT RESET
10、 建立全局临时表
A、创建用户临时表空间