• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

DB2数据库基础总结

发布: 2008-5-05 12:02 | 作者: 网络转载 | 来源: 网络转载 | 查看: 266次 | 进入软件测试论坛讨论

领测软件测试网

如何获取结果集的前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/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网