IBM DB2 数据库使用小技巧


1. 查看本地节点目录
命令窗口中输入:db2 list node directory

2. 编目一个TCP/IP节点
命令窗口:db2 catalog tcpip node

  1<node_name> remote <hostname|ip_address> server <svcname|port_number> ostype <os2|aix|win95|nt|hpux|sun|mvs|os400|vm|vse|sco|sgi|linux|dynix>
  2
  33\. 取消节点编目   
  4db2 uncatalog node <node_name>
  5
  61\. 查看本地节点目录   
  7命令窗口中输入:db2 list node directory 
  8
  92\. 编目一个TCP/IP节点   
 10命令窗口:db2 catalog tcpip node <node_name> remote <hostname|ip_address> server <svcname|port_number> ostype <os2|aix|win95|nt|hpux|sun|mvs|os400|vm|vse|sco|sgi|linux|dynix>
 11
 123\. 取消节点编目   
 13db2 uncatalog node <node_name>
 14
 154\. 查看系统数据库目录   
 16db2 list database directory 
 17
 185\. 查看本地数据库目录   
 19db2 list database directory on &lt;盘符&gt;   
 20在本地数据库目录中有而系统数据库目录中没有的数据库不能访问,可以在控制中心中选中&lt;数据库&gt;右键单击选择添加,然后输入需要添加的数据库名称或者点击刷新按钮选择数据库,加入数据库后即可以访问。 
 21
 226\. 编目数据库   
 23db2 catalog database <db_name> as <db_alias> at node <node_name>
 24
 257\. 取消数据库编目   
 26db2 uncatalog database <db_name>
 27
 288\. 测试远程数据库的连接   
 29db2 connect to <db_alias> user <user_id> using <password>
 30
 319\. 任何用户均可通过设置Current Schema专用寄存器为特定的数据库连接设置默认模式,初始默认值为当前会话用户的权限ID。   
 32set schema = <schema name="">   
 33可以由用户交互式的使用,也可在应用程序中使用,如果用Dynamicrules Bind选项绑定包,这个语句就没有作用。此语句不在事务控制之下。 
 34
 3510\. 代码页的设置   
 36在创建数据库时设置字符集   
 37create database <db_name> using codeset <codeset> territory <territiry>   
 38例:   
 39create database dbtest using codeset IBM-437 territory US   
 40也可以设置整个数据库的代码页,在win2000/NT/xp中,在我的电脑--&gt;属性--&gt;高级--&gt;环境变量中添加变量DB2CODEPAGE = <codepage>,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386。或者在IBM DB2命令窗口输入 db2set DB2CODEPAGE=1386,设置后需要重新启动DB2生效。 
 41
 4211\. DB2低版本数据到高版本的迁移   
 43先将低版本数据备份使用恢复功能导入高版本数据库,然后在命令窗口输入 db2 migrate database <db_name>。 
 44
 4512\. 表名或模式中含有引号时访问表   
 46命令窗口:db2 select * from \"tabschema\".\"tabname\"   
 47命令行处理器:db2=&gt; select * from "tabschema"."tabname" 
 48
 4913\. 导出数据库的表结构生成DDL文件   
 50命令窗口:db2look -d <db_name> -e -c -o <file_name>   
 51  
 5214\. 执行脚本文件   
 53命令窗口:db2 -tvf <file_name>   
 54  
 5515\. 代码页的转换 
 56
 5716\. 获取当前DB2的版本   
 58select * from sysibm.sysversions 
 59
 6017\. DB2表的字段的修改限制?   
 61只能修改VARCHAR2类型的并且只能增加不能减少   
 62alter table <tb_name> alter column <col_name> set data type varchar(SIZE) 
 63
 6418\. 如何查看表的结构?   
 65describe table <tb_name>   
 66or   
 67describe select * from <schema>.<tb_name>
 68
 6919\. 如何快速清除一个大表?   
 70ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE 
 71
 7220\. 如何查看数据库的存储过程?   
 73SELECT * FROM SYSCAT.PROCEDURES 
 74
 7521\. 如何查看表的约束?   
 76SELECT * FROM SYSCAT.CHECKS WHERE TABNAME = <tb_name>
 77
 7822\. 如何查看表的引用完整约束?   
 79SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME = <tb_name>
 80
 8123\. 如何知道BUFFERPOOLS状况?   
 82select * from SYSCAT.BUFFERPOOLS 
 83
 8424\. 如何在命令行下查看修改实例和数据库配置参数?   
 85查看实例配置参数: db2 get dbm cfg   
 86修改实例配置参数: db2 update dbm cfg using 参数名 新值 
 87
 88查看数据库配置参数: db2 get db cfg for <db_name>   
 89修改数据库配置参数: db2 update db cfg for <db_name> using 参数名 新值 
 90
 9125\. 如何修改缓冲区?   
 92增加缓冲区: create bufferpool <buf_name> size <number of="" pages=""> [pagesize 4096] {[not] EXTENDED STORAGE}   
 93修改缓冲区: alter bufferpool <buf_name> size <number of="" pages=""> {[not] EXTENDED STORAGE}   
 94删除缓冲区: drop bufferpool <buf_name>
 95
 96如果缓冲区大小设置为 -1 表示缓冲池的页面数目由数据库配置参数buffpage决定。   
 97注意: 数据库配置参数buffpage仅对缓冲区大小设置为 -1 的缓冲池起作用。 
 98
 9926\. 多个字段时如何不通过使用select子句使用in/not in   
100select * from tabschema.tabname where (colA, colB, colC) [not] in (values (valueA1, valueB1, valueC1), (valueA2, valueB2, valueC2), ...(valueAn, valueBn, valueCn)) 
101
10227\. 查看当前连接到数据库的应用   
103db2 list application [show detail] 
104
10528\. 如何确认DB2数据库的一致性   
106db2dart <db_name> /DB   
107/DB表示检查整个数据库的一致性 
108
10929\. 测试SQL语句的性能   
110db2batch -d <db_name> -f <file_name> [-a userid/passwd] [-r <outfile_name>]   
111-r 选项表示将查询结果输出到一个文件中。   
11230\. 导出某个表的数据   
113export to <derectry><filme>   
114如:导出用户表   
115export to c:\user.ixf of ixf select * from user 
116
11731\. 导入数据   
118import from   
119如:导入用户表。导入时可以直接建立新表。如果有该表存在也可以用INSERT 插入,或者用UPDATE更新   
120import from c:\user.ixf of ixf [Create/Insert into / update] tablename</filme></derectry></outfile_name></file_name></db_name></db_name></buf_name></number></buf_name></number></buf_name></db_name></db_name></tb_name></tb_name></tb_name></schema></tb_name></col_name></tb_name></file_name></file_name></db_name></db_name></codepage></territiry></codeset></db_name></schema></password></user_id></db_alias></db_name></node_name></db_alias></db_name></node_name></os2|aix|win95|nt|hpux|sun|mvs|os400|vm|vse|sco|sgi|linux|dynix></svcname|port_number></hostname|ip_address></node_name></node_name></os2|aix|win95|nt|hpux|sun|mvs|os400|vm|vse|sco|sgi|linux|dynix></svcname|port_number></hostname|ip_address></node_name>
Published At
Categories with 数据库类
Tagged with
comments powered by Disqus