DB2数据库常用语句

创建数据库语句
db2 create db 数据库名 on 路径  using codeset GBK territory cn
连接数据库
db2 connect to 数据库名 user 用户名 using 密码
数据库服务停止和启动
--停止
db2stop force
--启动
db2start
整库备份
db2 backup db 数据库名 user 用户名 using 密码 to 路径
整库恢复
db2 restore db 数据库名 user 用户名 using 密码 from 路径
数据库单表导出ixf文件
db2 export to /backup/ixf/TABLE_NAME.ixf of ixf SELECT * FROM TABLE_NAME
数据库单表导入ixf文件
--插入:(主键冲突可能插入失败)
db2 import from /backup/ixf/TABLE_NAME.ixf of ixf insert into TABLE_NAME
---替换:(先删除目标表数据,再插入)
db2 import from /backup/ixf/TABLE_NAME.ixf of ixf replace into TABLE_NAME
--创建:(目标表没有先创建目标表,再插入)
db2 import from /backup/ixf/TABLE_NAME.ixf of ixf create into TABLE_NAME
查看数据库连接
db2 list application show detail
强制断开所有连接
db2 force application all
查询系统数据库目录
db2 list db directory
查看数据库参数
db2 get db cfg for 数据库名
修改数据库参数(样例)
db2 update db cfg for 数据库名 using STMTHEAP 4096
db2 update db cfg for 数据库名 using APPLHEAPSZ 4096
db2 update db cfg for 数据库名 using LOGFILSIZ 10240
db2 update db cfg for 数据库名 using LOGPRIMARY 60
db2 update db cfg for 数据库名 using LOGSECOND 30
报错没有权限执行这个
db2set DB2_GRP_LOOKUP=LOCAL,TOKENLOCAL
修改字段长度
Alter Table TABLE_NAME Alter COL_NAME Set Data Type Varchar(255)
增加新字段
alter table TABLE_NAME add column COL_NAME Varchar(255)
删除表字段
ALTER TABLE TABLE_NAME DROP COLUMN COL_NAME
修改密码
db2 connect to 数据库名 user 用户名 using 旧密码 new 新密码 confirm 新密码
修改字段名称
ALTER TABLE TABLE_NAME RENAME COLUMN  oldname TO newname
删除主键
ALTER TABLE TABLE_NAME DROP PRIMARY KEY
增加主键
ALTER TABLE TABLE_NAME ADD CONSTRAINT 主键名 PRIMARY KEY (COL_NAME)
查失效视图
SELECT * FROM syscat.tables WHERE TABSCHEMA=CURRENT SCHEMA AND STATUS='X' AND TYPE='V';
查锁表
SELECT AGENT_ID,TABLE_NAME FROM TABLE( snapshot_lock('数据库名',-1)) AS LOCK WHERE TABLE_NAME IS NOT NULL;
解锁
db2 reorg table TABLE_NAME
数据字典相关
--查看所有表
SELECT * FROM syscat.tables WHERE TABSCHEMA = CURRENT SCHEMA AND TYPE = 'T'
--查询所有视图
SELECT * FROM syscat.views WHERE VIEWSCHEMA = CURRENT SCHEMA
--查询所有函数
SELECT * FROM syscat.functions WHERE FUNCSCHEMA = CURRENT SCHEMA
--查看所有存储过程
SELECT * FROM syscat.procedures WHERE PROCSCHEMA = CURRENT SCHEMA
--查询主键
SELECT * FROM sysibm.syskeycoluse WHERE TBCREATOR = CURRENT SCHEMA
--查询所有表的所有字段
SELECT * FROM sysibm.syscolumns
查询表结构
SELECT tbname 表名    
	, (SELECT remarks FROM syscat.tables WHERE TABNAME = TBNAME) 表中文名    
	, COLNO+1 字段序号    
	, NAME 字段名    
	, remarks 字段中文名    
	, (CASE WHEN (coltype = 'VARCHAR' OR coltype = 'CHAR') THEN COLTYPE || '(' || TRIM (CHAR (LENGTH)) || ')' WHEN coltype = 'DECIMAL' THEN COLTYPE || '(' || TRIM (CHAR (LENGTH)) || ',' || TRIM (CHAR (SCALE)) || ')' WHEN coltype = 'DATE' THEN COLTYPE ELSE COLTYPE END) 字段类型    
	, (CASE WHEN (KEYSEQ = 0 OR KEYSEQ IS NULL) THEN 'N' ELSE 'Y' END) 是否主键    
	, NULLS 可否为空
FROM sysibm.syscolumns
WHERE TBNAME = 'TABLE_NAME' ORDER BY COLNO;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值