如何获取结果集的前N行数据
Select * from tablename fetch first N rows only
安装DB2默认值?
在WINDOWS或OS/2中默认实例的是DB2
在LINUX或UNIX环境下默认实例的是DB2INST1
在WINDOWS或OS/2中默认帐户的是DB2ADMIN
在LINUX或UNIX环境下默认帐户的是DB2AS
如何定义序列
CREATE SEQUENCE ORDERSEQ START WITH 1 INCREMENT BY 1 NOMAXVALUE NOCYCLE CACHE 24
例如:
create sequence pk_only_empid;
select NEXTVAL FOR pk_only_empid from (values 1) as tmp;
如何关闭表的日志
ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INIALLY
如何获取SQL执行计划
SQL 解释工具
SQL 解释工具提供查询优化器为 SQL 语句所选择的访问计划的有关详细信息。该信息存储在 EXPLAIN 表中,可以在稍后使用诸如 Visual Explain、db2expln、dynexpln 和 db2exfmt 的工具进行格式化,从而以友好的可视方式进行表示。
EXPLAIN 表可以在您第一次使用 Visual Explain 时自动进行创建。即使没有创建它们,您也可以手工进行创建,如下:
% cd sqllibmisc
% db2 connect to bank
% db2 -tvf EXPLAIN.DDL
本文中,我们使用 db2exfmt 工具。例如,使用 db2exfmt 解释动态 SQL 语句,在 DB2 命令窗口中按照下列步骤进行:
以下是引用片段:
% db2 connect to <database_name>
% db2 set current explain mode explain
% db2 -tvf <Input file with an SQL statement ended with a semicolon>
% db2 set current explain mode no
% db2exfmt -d <dbname> -g TIC -w -1 -n % -s % -# 0 -o <output file>
如何创建事例?
DB2ICRT INSTNAME <...PARAMETERS>
如果是客户端,加上client关键字
例如:
1) 用root登录,命令为smitty创建用户db2inst1,用于数据库管理。
2) 用root登录,使用db2icrt创建实例DB2 实例,使用以下命令。
cd /usr/opt/db2*/instance/
./db2icrt -s client db2inst1
3) 用db2inst1用户登录,创建数据库的本地节点目录,建立远程数据库映射别名,使用以下命令。
cd /usr/opt/db2*/bin
db2 catalog tcpip node wmsint remote 182.247.70.94 server 60000
db2 catalog database wmsint as wmsint at node wmsint
db2set db2codepage=1386
db2 terminate
4) 为了使root用户可以使用db2命令,要把home/db2inst1下的.profile文件中的下面一段文字加到根目录下的.profile中。
以下是引用片段:
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.
exportPATH
#ThefollowingthreelineshavebeenaddedbyUDBDB2.
if[-f/home/db2inst1/sqllib/db2profile];then
./home/db2inst1/sqllib/db2profile
fi
5)退出root用户,重新登入
SQL写法技巧
多个字段时如何不通过使用select子句使用in/not in
select * from tabschema.tabname where (colA, colB, colC) [not] in (values (valueA1, valueB1, valueC1), (valueA2, valueB2, valueC2), ...(valueAn, valueBn, valueCn))
Update tablenameA t1
Set (colA,colB,colC)=(selelct b.colA,b.colB,b.colC from tablenameB t2 where t1.key = t2.key)
使用部分命令
列出所有实例 DB2ILIST
获取当前实例 GET INSTANCE
更新事例的配置 DB2IUPDT
删除事例 DB2IDROP INSTANCE_NAME
具体步骤如下:
停止事例上所有应用程序
在所有打开的命令行上执行DB2 TERMINATE
运行DB2STOP
备份DB2INSTPROF注册变量指出的事例目录
退出事例所有登陆者
使用DB2IDROP
也可以删除ID
文章来源于领测软件测试网 https://www.ltesting.net/