资源说明:1、断开所有连接:
db2 force application all
2、压缩联机备份:
db2 backup db <数据库名> online to "d:\test" compress
3、压缩脱机备份:
db2 backup db <数据库名> to "d:\test" compress
4、建表:
create table <表名>(
"column1" integer not null,
"column2" varchar(30)
);
5、建主键
alter table <表名> add primiary key ("column1");
6、建唯一索引
CREATE UNIQUE INDEX "<索引名称>" on "<表名>"("column1" asc);
7、表runstasts
runstats on table <表名> for index <索引名> shrlevel reference;
8、数据库还原:
db2 restore db <数据库名> from "d:\test" taken at yyyymmddhhmmss
9、查找当前的应用:db2 list application
10、删除当前正在使用的application:
db2 "force application (Id1,Id2,Id3)"
11、查看当前应用号的执行状态:
db2 get snapshot for application agentid 299 |grep Row
12、查看数据库参数:
db2 get db cfg for //当前数据库可以省略
13、Db2Stop Force的用法:
在进行Bind的时候出现如下错误:
SQL0082CAn error has occurred which has terminated processing.
SQL0092NNo package was created because of previous errors.
SQL0091NBinding was ended with "3" errors and "0" warnings.
主要是表文件被加锁,不能继续使用;
在进行stop的时候报错:db2stop
8/03/2005 21:46:530 0 SQL1025NThe database manager was not stopped because databases are still active.
SQL1025NThe database manager was not stopped because databases are still active.
需要使用如下命令可以解决这个问题: db2stop force
08/03/2005 21:47:49 0 0 SQL1064NDB2STOP processing was successful.
SQL1064NDB2STOP processing was successful.
14、缓冲池参数修改:
db2 alter bufferpool ibmdefaultbp size 10240
查看本表的数据内容如下:db2 "select * from syscat.bufferpools";
15、DB2 日志处理:
DB2日志是以文件的形式存放在文件系统中,分为两种模式:循环日志和归档日志。当创建新数据库时,日志的缺省模式是循环日志。在这种模式下,只能实现数据库的脱机备份和恢复。如果要实现联机备份和恢复,必须设为归档日志模式。
目前在综合业务系统中,设置的均是归档日志模式;其它系统(如事后监督、经营决策、中间业务等)一般都设置为循环日志模式。至于采用何种模式,可以通过修改数据库配置参数(LOGRETAIN)来实现: 归档日志模式:db2 update db cfg for using logretain on 注:改为on后,查看数据库配置参数logretain的值时,实际显示的是recovery。改变此参数后,再次连接数据库会显示数据库处于备份暂挂(BACKUP PENDING)状态。这时,需要做一次对数据库的脱机备份(db2 backup db ),才能使数据库状态变为正常。
循环日志模式:db2 update db cfg for using logretain off
16、Db2 日志处理
必须按照以下正确的步骤进行操作:
要求必须使用DB2命令PRUNE进行清理,不建议使用rm命令删除。
删除前应保证应用已停止(即联机已下来)。
查看当前使用的日志文件目录及第一活动日志文件
用 “db2 get db cfg for ”命令查看日志文件目录(Path to log files)参数,确定数据库当前使用的日志文件目录。 例如:Path to log files = /db2log/,说明DB2日志存放目录是/db2log
用 “db2 get db cfg for ”命令查看第一活动日志文件(First active log file)参数,该参数对应的日志文件之前的日志文件均为归档日志文件,如果确认没有用,可以删除。 例如:First active log file = S0015913.LOG,说明当前第一活动日志文件是S0015913.LOG。
备份好要删除的归档日志
删除归档日志 以应用用户(如BTP)登录,执行:
$ db2 connect to
$ db2 prune logfile prior to S???????.LOG
注:S???????.LOG为查看到的第一活动日志文件。此命令可以将当前第一活动日志文件之前的归档日志文件全部删除。
17、如何清理db2diag.log文件
db2diag.log,是用来记录DB2数据库运行中的信息的文件。可以通过此文件,查看记录的有关DB2数据库详细的错误信息。此文件也是不断增大的,需要定期进行清理。
可以通过查看实例的配置参数DIAGPATH,来确定db2diag.log文件是放在哪个目录下:db2 get dbm cfg 如果Diagnostic data directory path(DIAGPATH) = /home/db2inst1/sqllib/db2dump,则此文件是放在/home/db2inst1/sqllib/db2dump目录下。当文件系统/home的使用率达到80%-90%左右时,应及时删除db2diag.log文件。
请按以下正确步骤操作:确认应用(如BTP)、DB2已经停止。
将原db2diag.log文件备份到其它文件系统下。
删除db2diag.log文件。删除后,DB2会自动创建一个新的文件。
18、Load 操作
在进行load的时候
db2 "load from acmmst.txt of del modified by coldel| replace into acmmst nonrecoverable ”
由于数据不规范出现错误,强行中断以后,进行操作的时候出现如下错误:
SQL0668NOperation not allowed for reason code "3" on table "BTP.ACMMST".
SQLSTATE=57016
此时,进行反方向操作即可:
db2 "load from /dev/null of del terminate into acmmst nonrecoverable"。
如果没有使用参数nonrecoverable,则会出现数据库状态不正确的情况,使用:
db2 list tablesapces show detail 查看状态,如果不是正常状态,则脱机状态进行备份即可。
两个表文件之间UPDATE的方法:
db2 "update cdmcrd set offset = (select cdmlsl.offset from cdmlsl where cdmlsl.crdno=cdmcrd.crdno) where cdmcrd.crdno in (select cdmlsl.crdno from cdmlsl)
19、查看表空间的目录
db2 list tablespace containers for [Tablespace ID ] show detail
数据库表空间备份
数据库同步服务
reorg
rebind
修改数据库参数
查看AIX内存
svmon
prtconf
lsattr -El sys0 -a realme
bootinfo -r
vmstat
1.DB2产品的级别有那些?
企业版的NTERPRISEEDITION
工作组版WORKGROUPEDITION
企业扩展版ENTERPRISEEXTENDEDEDITION
个人版的PERSONALEDITION
卫星版的SATELLITEEDITION
微型版的EVERYPLACE
2.可以连接到DB2数据库的产品有哪些?
DB2客户端
DB2CONNECT
DB2DATAPROPAGATOR
DB2NET.DATA
DB2DATAJOINER
DB2RELATIONALCONNECT
WEBSPHERE应用服务器
等
3.DB2支持的通讯协议有哪些?
TCP/IP
NETBIOS
APPG
IPX/SPX
NAMEPIPE
等
4.DB2客户端产品有哪些?
DB2运行时间客户端DB2RUNTIMECLIENT
DB2管理客户端DB2ADMINISTRATIONCLIENT
DB2应用程序开发客户端DB2APPLICATIONDEVELOPMENTCLIENT
DB2瘦客户端DB2THINCLIENT
5.一个数据库是否可以安装在多个数据库服务器上?
可以
6.从哪个版本后存储过程可以用SQL语句来创建?
7.1版后
7.DB2提供哪些关系扩展器?
文本扩展器TEXTEXTENDER
图象扩展器IMAGEEXTENDER
音频扩展器AUDIOEXTENDER
视频扩展器VIDEOEXTENDER
空间数据扩展器SPATIALEXTENDER
XML扩展器XMLEXTENDER
网络搜索扩展器NET.SEARCHEXTENDER
8.WINDOWS和OS/2环境下的DB2安装目录结构?
用SETUP.EXE来安装
\SQLLIB安装的根目录,包括README文件
\SQLLIB\ADSM包含ADSTAR分布式存储管理器文件
\SQLLIB\BIN包含DB2工具的可执行文件
\SQLLIB\BND包含DB2工具的绑定文件
\SQLLIB\CC包含运行控制中心所需的文件
\SQLLIB\CFG包含默认的系统配置文件
\SQLLIB\CONV包含代码页转换表文件
\SQLLIB\DB2默认的实例目录
\SQLLIB\DB2DAS00缺省的DB2管理服务器目录
\SQLLIB\DOC包含DB2联机手册
\SQLLIB\FUNCTION默认的用户自定义函数目录
\SQLLIB\FUNCTION\UNFENCED默认的非隔离用户自定义函授目录
\SQLLIB\HELP联机帮助文件
\SQLLIB\JAVADB2所需的JAVA类库
JAVA12包含JDK1.2的支持程序
\SQLLIB\MISC包含HTML搜索服务器文件
\SQLLIB\MSG\PRIME包含信息文件
\SQLLIB\QP包含QUERYPATROLLER的客户端文件
\SQLLIB\SAMPLES包含样例程序和样例脚本
\SQLLIB\SPMLOG包含DB2同步点管理器日志文件
\SQLLIB\THNSETUP包含瘦客户端安装文件
9.UNIX和LINUX环境下的DB2安装目录结构?
用DB2SETUP.EXE来安装
安装的根目录下还将创建以下目录:
README安装的根目录,包括README文件
ADM包含系统管理工具文件
ADSM包含ADSTAR分布式存储管理器文件
BIN包含DB2工具的二进制可执行文件
BND包含DB2工具的绑定文件
CC包含运行控制中心所需的文件
CFG包含默认的系统配置文件
CONV包含代码页转换表文件
DOC包含DB2联机手册
FUNCTION默认的用户自定义函数目录
FUNCTION\UNFENCED默认的非隔离用户自定义函授目录
INSTALL包含安装程序
INSTANCE包含实例脚本
JAVADB2所需的JAVA类库
LIBDB2库文件
MAP包含DB2CONNECT使用的映射文件
MISC包含HTML搜索服务器文件
SAMPLES包含样例程序和样例脚本
MSG\$L包含DB2信息文件
10.AIX下用哪个命令来安装DB2?
INSTALLP命令
11.同一操作系统下可以安装多个DB2数据库?
可以的
12.如何停止实例?
DB2STOP
13.如何启动实例?
DB2START
14.如何修改注册项的值?
DB2SET可以修改
如:
设定当前实例的一个参数
DB2SETPARAMETER=VALUE
设定一个全局级的参数
DB2SETPARAMETER=VALUE-G(小写)
查看能在配置文件注册表中设置的所有变量的列表
DB2SET-LR(小写)
15.如何在CLP执行操作系统的命令?
在命令前加"!"作为前缀
DB2=>;!DIRC:\
16.在CLP中命令过长怎么办?
用"\"作为续行符号
17.如何获得DB2的命令的语法相关信息?
DB2?显示所有DB2命令
DB2?COMMAND显示命令信息
DB2?SQLnnnn显示这个SQLCODE的解释信息
DB2?DB2nnnn显示这个DB2错误的解释信息
18.如何查看当前CLP的设置?
DB2=>;LISTCOMANDOPTIONS
19.如何更新当前CLP会话的特定项设置?
DB2UPDATECOMMANDOPTIONSUSINGOPTIONS...
20.COMMANDWINDOWS可以通过哪个命令调用?
DB2CMD命令
21.管理服务器的默认名为?
UNIX下为DB2AS
WINDOWS下为DB2DAS00
22.常用管理DB2服务器实例的命令?
DB2ADMINSTART启动DB2管理服务器实例
DB2ADMINSTOP停止DB2管理服务器实例
DASICRTUNIX下创建DB2管理服务器实例
DASIDROPUNIX下删除DB2管理服务器实例
DB2ADMINCREATEWINDOWSOROS/2下创建DB2管理服务器实例
DB2ADMINDROPWINDOWSOROS/2下删除DB2管理服务器实例
DB2GETADMINCFG显示DB2管理服务器的配置参数
DB2UPDATEADMINCFG修改DB2管理服务器的配置参数
DB2RESETADMINCFG将DB2管理服务器的配置参数设为默认值
23.DB2目录分为哪几种?
系统数据库目录
本地数据库目录
节点目录
DCS目录
管理节点目录
24.如何查看系统数据库目录?
LISTDBDIRECTORY
25.如何查看数据库服务器目录?
LISTNODEDIRECTORY
26.DB2实例的服务器的默认端口是?
50000
服务器名称为DB2CDB2
27.DB2UDB服务器端的认证类型有?
SERVER
SERVER_ENCRYPT
CLIENT
DCE
DCE_SERVER_ENCRYPT
KERBEROS
KRB_SERVER_ENCRYPT
28.DB2客户端的认证类型有?
SERVER
SERVER_ENCRYPT
DCS
DCS_ENCRYPT
CLIENT
DCE
29.DB2中有哪几种类型的权限?
SYSADM系统管理权限
SYSCTRL系统控制权限
SYSMAINT系统维护权限
DBADM数据库管理权限
LOAD对表进行LOAD操作的权限
30.不能通过GRANT授权的权限有哪种?
SYSAM
SYSCTRL
SYSMAINT
要更该述权限必须修改数据库管理器配置参数
31.表的类型有哪些?
永久表(基表)
临时表(说明表)
临时表(派生表)
32.如何知道一个用户有多少表?
SELECT*FROMSYSIBM.SYSTABLESWHERECREATOR='USER'
33.如何知道用户下的函数?
select*fromIWH.USERFUNCTION
select*fromsysibm.SYSFUNCTIONS
34.如何知道用户下的VIEW数?
select*fromsysibm.sysviewsWHERECREATOR='USER'
35.如何知道当前DB2的版本?
select*fromsysibm.sysvERSIONS
36.如何知道用户下的TRIGGER数?
select*fromsysibm.SYSTRIGGERSWHERESCHEMA='USER'
37.如何知道TABLESPACE的状况?
select*fromsysibm.SYSTABLESPACES
38.如何知道SEQUENCE的状况?
select*fromsysibm.SYSSEQUENCES
39.如何知道SCHEMA的状况?
select*fromsysibm.SYSSCHEMATA
40.如何知道INDEX的状况?
select*fromsysibm.SYSINDEXES
41.如何知道表的字段的状况?
select*fromsysibm.SYSCOLUMNSWHERETBNAME='AAAA'
42.如何知道DB2的数据类型?
select*fromsysibm.SYSDATATYPES
43.如何知道BUFFERPOOLS状况?
select*fromsysibm.SYSBUFFERPOOLS
44.DB2表的字段的修改限制?
只能修改VARCHAR2类型的并且只能增加不能减少.
45.如何查看表的结构?
DESCRIBLETABLETABLE_NAME
OR
DESCRIBLESELECT*FROMSCHEMA.TABLE_NAME
46.如何快速清除一个大表?
ALTERTABLETABLE_NAMEACTIVENOTLOGGEDINITALLYWITHEMPTYTABLE
ALTER TABLETABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTYTABLE
两个commit之间的delete 动作是不记日志的
commit
alter table ab activate not logged intially
delete ab where id >;1000
commit
(创建的表ab不记录日志:create table ab (id int) not logged initially)
47.如何查看数据库的包?
select*fromsysCAT.PACKAGES
48.如何查看数据库的存储过程?
SELECT*FROMSYSCAT.PROCEDURES
49.如何查看表的约束?
SELECT*FROMSYSCAT.CHECKSWHERETABNAME='AAAA'
50.如何查看表的引用完整约束?
SELECT*FROMSYSCAT.REFERENCESWHERETABNAME='AAAA'
51.安装DB2默认的事例名称是?
在WINDOWS或OS/2中默认的是DB2
在LINUX或UNIX环境下默认的是DB2INST1
52.安装后的默认帐户是?
在WINDOWS或OS/2中默认的是DB2ADMIN
在LINUX或UNIX环境下默认的是DB2AS
53.事例的类型有哪些?
CLIENT(客户)
STANDALONE(独立的)
SATELLITE(卫星)
EEDB2
EEE
54.如何创建事例?
DB2ICRTINSTNAME<...PARAMETERS>;
55.如何列出系统上的所有可用事例?
DB2ILIST
56.如何知道当前对话用的是哪个事例?
GETINSTANCE
57.如何更新事例的配置?
DB2IUPDT
58.如何删除事例?
DB2IDROPINSTANCE_NAME
具体步骤如下:
停止事例上所有应用程序
在所有打开的命令行上执行DB2TERMINATE
运行DB2STOP
备份DB2INSTPROF注册变量指出的事例目录
退出事例所有登陆者
使用DB2IDROP
也可以删除ID
59.如何列出本地系统上有许可信息的所有产品?
DB2LICM-L
60.如何增加一产品许可?
DB2LICM-AFILENAME
61.如何删除一个产品的许可?
DB2LICM-RPRODUCTPASSWORD
62.如何更新已购买的许可数量?
DB2LICM-U
63.如何强制只使用已经购买的数量?
DB2LICM-EHARD
64.如何更新系统上所使用的许可政策类型?
DB2LICM-PREGISTEREDCONCURRENT
65.如何更新系统上的处理器的数量?
DB2LICM-N
66.如何查询许可文件记录的版本信息?
DB2LICM-V
67.如何查询DB2LICM的帮助信息?
DB2LICM-H
68.一个数据库至少包括哪些表空间?
一个目录表空间
一个或多个用户表空间
一个或多个临时表空间
69.根据数据与存储空间之间移动的控制方式不同,分哪两种表空间?
系统管理的空间(SMS)
数据库管理的空间(DMS)
70.如何列出系统数据库目录的内容?
LISTDATABASEDIRECTORY
71.CREATEDATABASE是SQL命令吗?
不是,是系统命令
72.如何查看数据库ABC的配置文件的内容?
GETDATABASECONFIGURATIONFORABC
73.如何将数据库ABC的参数设置为默认数值?
RESETDATABASECONFIGURATIONFORABC
74.如何修改数据库ABC配置参数数值?
UPDATEDATABASECONFIGURATIONFORABC
USING
75.如何重新启动数据库?
RESTARTDATABASEDATABASE_NAME
76.如何激活数据库?
ACTIVATEDATABASEDATABASE_NAME
77.如何停止数据库?
DEACTIVATEDATABASEDATABASE_NAME
78.如何删除数据库?
DROPDATABASEDATABASE_NAME
79.如何建立模式?
CREATESCHEMASCHEMA_NAME
80.如何设置模式?
SETSCHEMA=SCHEMA_NAME
81.表的类型有哪些?
基本表
结果表
概要表
类型表
子类型
子表
声明的临时表
系统临时表
82.如何定义序列?
CREATESEQUENCEORDERSEQSTARTWITH1INCREMENTBY1NOMAXVALUENOCYCLECACHE24
83.如何将表置于检查挂起状态?
SETINTEGRITYTABLE_NAMEOFF
84.如何获得表的排斥锁?
LOCKTABLETABLE_NAMEINEXCLUSIVEMODE
85.如何把表调整为没有检查数据的在线状态?
SETINTEGRITYFORTABLE_NAMEALLIMMEDIATEUNCHECKED
86.如何解除表的锁定?
COMMIT
87.如何关闭表的日志?
ALTERTABLETABLE_NAMEACTIVENOTLOGGEDINIALLY
88.如何删除表?
DROPSCHEMA.TABLE_NAME
89.如何重命名表?
RENAMETABLE_OLDTOTABLE_NEW
90.如何取当前时间?
SELECTCURRENTTIMESTAMPFROMSYSIBM.SYSDUMMY1
91.如何创建DB2的概要表?
DB2的概要表功能类似于ORACLE的实体化视图!
语法为:
CREATESUMMARYTABLETABLE_NAMEAS(FULLSELECT)...
例如:
定义一个可以刷新的概要表:
CREATESUMMARYTABLETABLE_NAMEAS(SELECT*FROMTABLE_NAME1WHERECOL1='AAA')
DATAINITIALLYDEFERREDREFRESHDEFERRED
其中DATAINITIALLYDEFERRED规定不能将数据作为CREATETABLE语句的一部分插入表中.
REFRESHDEFERRED规定表中的数据可以在任何使用了REFRESHTABLE语句的时候获得刷新!
92.如何刷新概要表?
REFRESHTABLESUM_TABLE
其中SUM_TABLE为概要表.
93.如何修改概要表?
ALTERTABLESUM_TABLE...
94.如何创建临时表?
语法:
DECLAREGLOBALTEMPORARYTABLETABLE_NAME
AS(FULLSELECT)DEFINITIONONLY
EXCLUDINGIDENTITYCOLUMNATTRIBUTES
ONCOMMITDELETEROWS
NOTLOGGED
第一行规定临时表的名称.
第二行规定临时表的列的定义.
第三行规定不是从源结果表定义中复制的恒等列.
第四行规定如果没有打开WITHGOLD光标,将会删除表的所有行.
第五行规定不对表的改变进行记录.
例如:
DECLAREGLOBALTEMPORARYTABLEDEC_BSEMPMS
AS(SELECT*FROMBSEMPMS)DEFINITIONONLY
EXCLUDINGIDENTITYCOLUMNATTRIBUTES
ONCOMMITDELETEROWS
NOTLOGGED
95.视图的管理?
如何创建视图:
CREATEVIEWVIEW_NAMEASSELECT*FROMTABLE_NAMEWHERE...
删除视图:
DROPVIEWVIEW_NAME
96.如何知道视图定义的内容?
SELECT*FROMSYSCAT.VIEWS中的TEXT列中.
97.如何创建别名?
CREATEALIASALIAS_NAMEFORPRO_NAME
后面的PRO_NAME可以是TABLE,VIEW,ALIAS,NICKNAME等.
98.如何创建序列?
例如:
CREATESEQUENCESEQUENCE_NAME
STARTWITHSTART_NUMBER
INCREMENTBYVALUE1
NOMAXVALUE
NOCYCLE
CACHEMAXIMUMNUMBEROFSEQUENCEVALUES
第一行规定序列的名称.
第二行规定序列的开始数值.
第三行规定每次新增的幅度.
第四行规定没有最大数值限制.
第五行规定最大数值限制.
99.如何更改序列?
ALTERSEQUENCESEQUENCE_NAME...
可以修改的参数
STARTWITH的START_NUMBER
INCREMENT的VALUE1
NOMAXVALUE的数值
NOCYCLE属性
MAXIMUMNUMBEROFSEQUENCEVALUES最大数值
100.如何删除序列?
DROPSEQUENCESEQUENCE_NAME
101.DB2支持导入(IMPORT)的文件格式有?
有:DEL,ASC,IXF,WSF等
102.DB2支持导出(EXPORT)的文件格式有?
有:DEL,IXF,WSF等.
不支持ASC格式.
103.DB2支持载入(LOAD)的文件格式有?
有:DEL,ASC,IXF等.
不支持WSF格式.
104.DB2支持DB2MOVE的文件格式有?
有:IXF等.
不支持ASC,DEL,WSF格式.
105.DB2数据库监控的两个组成部分?
快照监控(SNAPSHOTMONITOR)可返回特定时间点的数据库活动的快照.
事件监控(EVENTMONITOR)记录事件发生的数据.
106.系统监控的数据元素类型?
计数器(COUNTER)记录活动发生的次数.
测量(GAUGE)测量条目的当前值.
水线(WATERMARK)从监控来元素达到的最大或最小数值.
信息(INFORMATION)监控活动的参照类型细节.
时间点(TIMESTAMP)活动发生的日期时间.
时间(TIME)返回一个活动花费的时间.
107.如何知道监控堆所需的页的数量?
(NUMBEROFMONITORINGAPPLICATIONS+1)*(NUMBEROFDATABASES*(800+(NUMBEROFTABLES
ACCESSED*20)+((NUMBEROFAPPLICATIONSCONNECTED+1)*(200+(NUMBEROFTABLE
SPACES*100)))))/4096
其大小受参数MON_HEAD_SZ控制.
108.如何建立事件监控器?
CREATEEVENTMONITORTABLEMONFORTABLESWRITETOFILE'D:\TEMP'
109.如何激活事件监控器?
SETEVENTMONITORTABLEMONSTATE1
110.如何停止事件监控器?
SETEVENTMONITORTABLEMONSTATE0
111.如何查询监控器的状态?
SELECTEVMONNAME,EVENT_MON_STATE(EVMONNAME)FROMSYSCAT.EVENTMONITORS
112.如何删除事件监控器?
DROPEVENTMONITORTABLEMON
113.UNIX和WINDOWS上创建管道事件监控器(PIPE意EVNT见MONITOR)的不同?
第一步:定义事件监控器
UNIX:
CONNECTTOSAMPLE
CREATEEVENTMONITORSTMB2FORSTATEMENTSWRITETOPIPE'/TMP/EVPIPE1'
WINDOWS:
CONNECTTOSAMPLE
CREATEEVENTMONITORSTMB2FORSTATEMENTSWRITETOPIPE'\\.\TMP\EVPIPE1'
第二步:建立命名管道
UNIX:
可以使用MKFIFO()函数或者MKFIFO命令.
WINDOWS:
可以使用CREATENAMEDPIPE()函数,管道名称与CREATEEVENTMONITOR规定名称相同.
第三步:打开命名管道
UNIX:
使用OPEN()函数.
WINDOWS:
使用CONNECTNAMEDPIPE()函数.
也可以用DB2EVMON命令,如:
DB2EVMON-DBSAMPLE-EVMSTMB2
第四步:激活命名管道事件监控器
除非自动激活命名管道事件监控器,否则
SETEVENTMONITORSTMB2STATE1
第五步:从命名管道读取数据
UNIX:
可以使用READ()函数.
WINDOWS:
可以使用READFILE()函数.
第六步:停止事件监控器
SETEVENTMONITORSTMB2STATE0
第七步:关闭命名管道
UNIX:
可以使用CLOSE()函数.
WINDOWS:
可以使用DISCONNECTNAMEDPIPE()函数.
第八步:删除命名管道
UNIX:
可以使用UNLINK()函数.
WINDOWS:
可以使用CLOSEHANDLE()函数.
114.DB2的SQL语句的类别
DCL:数据控制语言,提供对数据库对象的访问权限.
DDL:数据定义语言,创建,修改,删除数据库对象的.
DML:数据操纵语言,用来插入,更新,删除数据的.
115.DCL的权限有哪些?
CONTROL权限:如果用户创建一个对象,则改用户能完全访问该对象.
GRANT语句将权限授予给用户.
REVOKE语句撤销一个用户的权限.
116.DDL有哪些?
CREATE
DECLARE
ALTER
DROP
等
117.DML有哪些?
INSERT
SELECT
UPDATE
DELETE
等
118.DB2有没有布尔类型?
没有
119.如何查询DB2的内置函数?
自带文档ADMINISTION-->;SQLREFERENCE-->;FUNCTIONS内
120.如何执行DB2的脚本文件?
DB2-VTFFILENAME
121.DB2中象ORACLE的ROWNUM()是?
ROW_NUMBER()OVER()
122.DB2如何得到错误代码的说明?
DB2?SQLCODE
123.DB2中的VARCHAR转换为INTEGER的函数为?
CAST()
124.DB2中的INTEGER转换为VARCHAR的函数为?
CHAR()
125.DB2中的VARCHAR转换为DATE的函数为?
DATE()
126.DB2中的DATE转换为VARCHAR的函数为?
CHAR()
127.DB2中的TRIGGER能否修改?
不能,只能删除重建
128.WINDOWS下如何知道DB2的端口号?
\WINNT\SYSTEM32\DRIVERS\ETC\SERVICES
129.DB2如何执行存储过程?
可以DB2CALLPROCEDURE_NAME
130.如何进入DB2的DOS命令方式?
DB2CMD
131.如何得到DB2的进程号?
DB2LISTAPPLICATIONS
132.如何杀DB2的进程?
FORCEAPPLICATION(ID)
133.A用户安装DB2后,如何用B用户启动DATABASE?
在B用户下的.PROFILE中加上
./HOME/DB2INST/SQLLIB/DB2PROFILE
134.DB2中类似ORACLE的快照是?
SUMMARYTABLE
DB2函数
135.AVG()
返回一组数值的平均值.
SELECTAVG(SALARY)FROMBSEMPMS;
136.CORR(),CORRELATION()
返回一对数值的关系系数.
SELECTCORRELATION(SALARY,BONUS)FROMBSEMPMS;
137.COUNT()
返回一组行或值的个数.
SELECTCOUNT(*)FROMBSEMPMS;
138.COVAR(),COVARIANCE()
返回一对数值的协方差.
SELECTCOVAR(SALARY,BONUS)FROMBSEMPMS;
139.MAX()
返回一组数值中的最大值.
SELECTMAX(SALARY)FROMBSEMPMS;
140.MIN()
返回一组数值中的最小值.
SELECTMIN(SALARY)FROMBSEMPMS;
141.STDDEV()
返回一组数值的标准偏差.
SELECTSTDDEV(SALARY)FROMBSEMPMS;
142.SUM()
返回一组数据的和.
SELECTSUM(SALARY)FROMBSEMPMS;
143.VAR(),VARIANCE()
返回一组数值的方差.
SELECTVARIANCE(SALARY)FROMBSEMPMS;
144.ABS(),ABSVAL()
返回参数的绝对值.
SELECTABS(-3.4)FROMBSEMPMS;
145.ACOS()
返回参数的反余弦值.
SELECTACOS(0.9)FROMBSEMPMS;
146.ASCII()
返回整数参数最左边的字符的ASCII码.
SELECTASCII('R')FROMBSEMPMS;
147.ASIN()
返回用弧度表示的角度的参数的反正弦函数.
SELECTASIN(0.9)FROMBSEMPMS;
148.ATAN()
返回参数的反正切值,该参数用弧度表示的角度的参数.
SELECTATAN(0.9)FROMBSEMPMS;
149.ATAN2()
返回用弧度表示的角度的X和Y坐标的反正切值.
SELECTATAN2(0.5,0.9)FROMBSEMPMS;
150.BIGINT()
返回整型常量中的数字或字符串的64位整数表示.
SELECTBIGINT(EMP_NO)FROMBSEMPMS;
151.CEILING()ORCEIL()
返回比参数大或等于参数的最小的整数值.
SELECTCEILING(3.56)FROMBSEMPMS;
SELECTCEIL(4.67)FROMBSEMPMS;
152.CHAR()
返回日期时间型,字符串,整数,十进制或双精度浮点数的字符串表示.
SELECTCHAR(SALARY,',')FROMBSEMPMS;
153.CHR()
返回具有由参数指定的ASCII码的字符.
SELECTCHAR(167)FROMBSEMPMS;
154.CONCAT()
返回两个字符串的连接.
SELECTCONCAT(EMP_NO,EMP_NAM)FROMBSEMPMS;
155.YEAR()
返回数值的年部分.
SELECTYEAR('2003/01/02')FROMBSEMPMS;
156.VARCHAR()
返回字符串,日期型,图形串的可变长度的字符串表示.
SELECTVARCHAR(EMP_NAM,50)FROMBSEMPMS;
157.UCASE()ORUPPER()
返回字符串的大写.
SELECTUCASE(EMP_NAM)FROMBSEMPMS;
SELECTUPPER(EMP_NO)FROMBSEMPMS;
158.TRUNCATE()ORTRUNC()
从表达式小数点右边的位置开始截断并返回该数值.
SELECTTRUNCATE(345.6789,2)FROMBSEMPMS;
159.TIME()
返回一个数值中的时间.
SELECTTIME('2001-03-19.12.30.123456')FROMBSEMPMS;
160.SUBSTR(EXP1,EXP2)
返回EXP1串自EXP2处开始的子串.
SELECTSUBSTR('CDNJFDJFJD',5)FROMBSEMPMS;
SELECTSUBSTR('CDNJFDJFJD',5,2)FROMBSEMPMS;
161.SQRT()
返回该参数的平方根.
SELECTSQRT(36)FROMBSEMPMS;
162.SPACE()
返回由参数指定的长度,包含空格在内的字符串.
SELECTSPACE(10)FROMBSEMPMS;
163.SECOND()
返回一个数值的秒部分.
SELECTSECOND('18:34:32')FROMBSEMPMS;
164.RTRIM()
删除字符串尾部的空格.
SELECTRTRIM('COMMENT')FROMBSEMPMS;
165.ROUND(EXP1,EXP2)
返回EXP1小数点右边的第EXP2位置处开始的四舍五入值.
SELECTROUND(2345.6789,2)FROMBSEMPMS;
166.REPLACE(EXP1,EXP2,EXP3)
用EXP3替代EXP1中所有的EXP2
SELECTCHAR(REPLACE('ROMANDD','NDD','CCB'),10)FROMBSEMPMS;
167.REPEAT(EXP1,EXP2)
返回EXP1重复EXP2次后的字符串.
SELECTCHAR(REPEAT('REPEAT',3),21)FROMBSEMPMS;
168.REAL()
返回一个数值的单精度浮点数表示.
SELECTREAL(10)FROMBSEMPMS;
169.RAND()
返回0和1之间的随机浮点数.
SELECTRAND()FROMBSEMPMS;
170.POWER(EXP1,EXP2)
返回EXP1的EXP2次幂.
SELECTPOWER(2,5)FROMBSEMPMS;
171.POSSTR(EXP1,EXP2)
返回EXP2在EXP1中的位置.
SELECT('ABCDEFGH','D')FROMBSEMPMS;
172.NULLIF(EXP1,EXP2)
如果EXP1=EXP2,则为NULL,否则为EXP1
173.NODENUMBER()
返回行的分区号.
SELECTNODENUMBER(EMP_NO)FROMBSEMPMS;
174.MONTH()
返回一个数值的月部分.
SELECTMONTH('2003/10/20')FROMBSEMPMS;
175.MOD(EXP1,EXP2)
返回EXP1除以EXP2的余数.
SELECTMOD(20,8)FROMBSEMPMS;
176.MINUTE()
返回一个数值的分钟部分.
SELECTMINUTE('18:34:23')FROMBSEMPMS;
177.LTRIM()
删除字符串前面的空格.
SELECTLTRIM('CDDD')FROMBSEMPMS;
178.HOUR()
返回一个数值的小时部分.
SELECTHOUR('18:34:23')FROMBSEMPMS;
179.DOUBLE()
如果参数是一个数字表达式,返回与其相对应的浮点数,如果参数是字符串表达式,则返回该数的字符串表达式.
SELECTDOUBLE('5678')FROMBSEMPMS;
180.EXP()
返回参数的指数函数.
SELECTEXP(2)FROMBSEMPMS;
181.FLOAT()
返回一个数的浮点表示.
SELECTFLOAT(789)FROMBSEMPMS;
182.FLOOR()
返回小于或等于参数的最大整数.
SLECTFLOOR(88.93)FROMBSEMPMS;
183.HEX()
返回一个表示为字符串的值的16进制表示.
SELECTHEX(16)FROMBSEMPMS;
在Windows下,通过如下命令即可创建DB2实例:db2icrt instance_name
需要注意的是,instance_name必须按照如下的规则命令:
1)不能大于 8 个字符
2)不能 以"sql"、"ibm"或"sys"开头ITPUB个人空间 w o6z B-a-H l;c%z4G"] n
3)不能以数字开头或者包含 a-z、$、#、@、_ 或 0-9 之外的字符
如:
D:DB2BIN>db2icrt insttest
DB2ICRT命令成功完成。
D:DB2BIN>db2ilist --列举服务器上存在的 DB2 实例ITPUB个人空间
D:DB2BIN>
要删除一个实例,首先断开所有数据库连接,然后执行以下命令停止实例
db2idrop -f instance_name
比如:
D:DB2BIN>db2idrop -f insttest
DB20000I DB2IDROP命令成功完成。
D:DB2BIN>
察看实例配置文件
--默认
--分屏显示
DB2 GET DBM CFG | More
--将显示结果存入 cfg.out 文件中
DB2 GET DBM CFG > cfg.out
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。