DB2基礎(chǔ),入門
本篇文章是本人在用到DB2項目開始時作的一個總結(jié),以下資料有一部分是來自網(wǎng)絡(luò),一部分是出自本人之手,不管怎么樣,目的只有一個,希望給看到這篇文章的一些幫助,轉(zhuǎn)貼請將原貼轉(zhuǎn)全,萬分感謝------(0734w)月下竹音??從word上面直接拷貝時圖片不顯示,待哪天有時間再把圖片加上

DB2基礎(chǔ),入門
一.????? 安裝DB2
???????? 有三個選擇,可以企業(yè)版,也可以只安裝客戶端。
???????? 安裝完成后,打開”控制中心”可以操作整個DB2,打開”信息中心”可以查看相應(yīng)的幫助文檔.,
二.????? 安裝Quest Central for DB2
???????? 這兩個軟件都不需要配置,只要不斷點下一步就可以安裝成功,安裝完成后會在桌面上生成一個 Knowledge Xpert for DB2快捷方式.這就是它的幫助文檔.
三.????? 在按制中心創(chuàng)建一個實例
1.首先打開DB2“控制中心”,右擊“我以編目的系統(tǒng)”,再選擇添加,會出現(xiàn)如下頁面,單擊“發(fā)現(xiàn)”然后選擇相應(yīng)主機(jī),會自動填入如下項,最后確定,如圖1:
如圖1
2.設(shè)置主機(jī):右擊剛才新建的實例,出現(xiàn)如下頁面,節(jié)點名為隨意字符,不過必須為1-8個字節(jié),我們這里假設(shè)為TEST,創(chuàng)建實例服務(wù)名可以不填,端口是50000(DB2默認(rèn)的端口),然后確定,如下圖2:
圖2
3,連接相應(yīng)的數(shù)據(jù)庫實例:右擊TEST,添加,選擇相應(yīng)的數(shù)據(jù)庫實例,點擊發(fā)選擇你需要的數(shù)據(jù)庫,如圖3,當(dāng)要操作相應(yīng)數(shù)據(jù)庫時會提示輸入用戶名,密碼.
圖3
四.????? 創(chuàng)建數(shù)據(jù)庫
1.選擇數(shù)據(jù)庫,右擊選擇”創(chuàng)建”選擇”使用向?qū)?chuàng)建數(shù)據(jù)庫”(注意“建庫時務(wù)必工”區(qū)域“中選擇編碼方式為utf-8,否則當(dāng)插入中文時,會有意想不到的錯誤提示,最典型的就是提示JDK版本不兼容)操作如圖4
圖4
2.分別填入數(shù)據(jù)名稱,用戶表,也可以直接填入數(shù)據(jù)庫名稱,點完成.如圖5
圖5
3.創(chuàng)建表的方式和數(shù)據(jù)庫創(chuàng)建類似,其中顯示表的時候可以創(chuàng)建過慮器.如果我想隱藏系統(tǒng)表,設(shè)置表名為 not like sys% 如圖6
圖6
五.????? Quest Central for DB2使用
1.?????? 簡介:Quest Central for Databases 是一種集成化、圖形化、跨平臺的數(shù)據(jù)庫管理解決方案,可以管理異構(gòu)環(huán)境下的 Oracle、DB2數(shù)據(jù)庫。Quest Central for Databases 消除了企業(yè)IT人員管理多種數(shù)據(jù)庫時面臨的技術(shù)障礙,提高了IT人員工作效率,改善了數(shù)據(jù)庫性能和數(shù)據(jù)庫應(yīng)用的可用性
2.????? 使用SQL Editor: 打開Quest Central for db2,點擊菜單欄的Tools,選擇SQL Editor圖7
圖7
3.使用Edit tools: Edit除了菜單欄分為兩個主要模塊,上面用于執(zhí)行的SQL語句,下面用于顯示執(zhí)行情況以及輸出信息,點擊左上角的執(zhí)行按鈕,執(zhí)行SQL, 圖8
六.????? ?數(shù)據(jù)類型說明
自己的一些總結(jié):
?
1.DB2沒有Boolean型。
2.DB2表中的列一旦建立不能刪除列。
DROP COLUMN:DB2 不允許您刪除一個列。我可以想到您希望刪除列的三個理由:
??? 回收空間:如果您希望這樣做,可以導(dǎo)出您希望保存的數(shù)據(jù),刪除那個表,用您需要的那些列重新創(chuàng)建表,然后裝入這個表。這是否代價高昂?當(dāng)然是,但是回收空間需要這樣或者 REORG TABLE。這些本來就是代價高昂的操作。
??? 這個列不再是行的邏輯部分:例如,您意識到您的雇員可能有兩個地址,并且停止跟蹤雇員(employee)表中的地址(雇員表和雇員地址(employee_address)表之間現(xiàn)在有 n:m 關(guān)系)。在雇員表上創(chuàng)建一個不包含地址列的視圖。
??? 如果您真的要用新奇的方法,可以使用 RENAME TABLE命令給基表一個新的名稱,然后將原始表名作為該視圖的名稱。您的視圖也可以連接雇員表中的有用列和從雇員地址獲得的地址。現(xiàn)在我們回到了關(guān)系的正道。
??? 列變寬了。如果它是 VARCHAR,那您運(yùn)氣不錯。DB2 允許您將 VARCHAR 列最多加寬至表空間(tablespace)中定義的頁大小寬度(缺省的 4K 頁大小為 4,005,而在 32K 頁上最多為 32,672):
?
3.除了VARCHAR能增加長度外,其它類型不能修改列屬性,也就是上面的第三點
?? 如:TT為表名,第二個為列名ALTER TABLE TT ALTER COLUMNTT SET DATA TYPE VARCHAR(40);
4.不能更換列名:如
ALTER TABLE tt RENAME COLUMN tt TO t3;
數(shù)據(jù)類型存放在:sysibm.SYSDATATYPES表中
數(shù)據(jù)類型?????? 類型?????????? 特性?????????????????? 示例或范圍?
?
數(shù)值型
SMALLINT?????? 數(shù)字?????????? 長度為?2?字節(jié)精度為?5?位???? ?范圍為-32768?至?32767?
?
INTEGER??????? 數(shù)字?????????? 長度為?4?字節(jié)精度為?10?位??? ?范圍為-2147483648?至?2147483647?
?
BIGINT???????? 數(shù)字?????????? 長度為八個字節(jié)的整數(shù),精度為 19 位范圍為
?????????????? ?????????????????????????-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
REAL?????????? 數(shù)字?????????? 單精度浮點32?位近似值???????? 范圍為否?????????????????????????????????????????????????? -3.402E+38至-1.175E-37?? 或?1.175E-37?至-3.402E+38或零?
DOUBLE???????? 數(shù)字?????????? 雙精度浮點64?位近似值???????? 范圍為-1.79769E+308?至-2.225E-307或?2.225E-307?至?1.79769E+308或零?
DECIMAL(5,2)?? 數(shù)字?????????? 精度為?5,小數(shù)位為?2???????????? 范圍????????????? 為???? ?-10**31+1?至?10**31-1?,小數(shù)位是指數(shù)字的小數(shù)部分的位數(shù),不能大于精度。最大精度是 31 位。
?
字符串
CHAR(15)?????? 定長字符串???? ?最大長度為?254??????? 'Sunny?day?'?
VARCHAR(15)??? 變長字符?????? 最大長度為?4000??????? 'Sunny?day'?
LONG VARCHAR?? 變長字符串????? 最長可達(dá) 32,700 字節(jié)
?
CLOB字符大對象 變長字符串????? 最長可達(dá)2,147,483,647 字節(jié)(容量最大2G)
?
BLOB?????????? 變長字符串????? 最長可達(dá) 2,147,483,647 字節(jié)(容量最大2G)
?
日期時間型
DATE?????????? 日期時間?????? 三部分值?????????????? 1991-10-27????
TIME?????????? 日期時間?????? 三部分值?????????????? 13.30.05????
TIMESTAMP????? 日期時間?????? 七部分值?? 1991-10-27-13:30“05.000000?
?
?
數(shù)值型數(shù)據(jù)類型說明:
DB2內(nèi)置數(shù)據(jù)類型可以分成
數(shù)值型(numeric)、
字符串型(character string)、
圖形字符串(graphic string)、
二進(jìn)制字符串型(binary string)
日期時間型(datetime)。
特殊數(shù)據(jù)類型(DATALINK ),DATALINK 值包含了對存儲在數(shù)據(jù)庫以外的文件的邏輯引用。
數(shù)值型數(shù)據(jù)類型包括 SMALLINT、INTEGER、BIGINT、DECIMAL(p,s)、REAL 和 DOUBLE。所有數(shù)值都有符號和精度。精度是指除符號以外的二進(jìn)制或十進(jìn)制的位數(shù)。如果數(shù)字的值大于等于零,就認(rèn)為符號為正。
*小整型,SMALLINT:小整型是兩個字節(jié)的整數(shù),精度為 5 位。小整型的范圍從 -32,768 到 32,767。
*大整型,INTEGER 或 INT:大整型是四個字節(jié)的整數(shù),精度為 10 位。大整型的范圍從 -2,147,483,648 到 2,147,483,647。
*巨整型,BIGINT:巨整型是八個字節(jié)的整數(shù),精度為 19 位。巨整型的范圍從 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。
* 小數(shù)型,DECIMAL(p,s)、DEC(p,s)、NUMERIC(p,s) 或 NUM(p,s):小數(shù)型的值是一種壓縮十進(jìn)制數(shù),它有一個隱含的小數(shù)點。壓縮十進(jìn)制數(shù)將以二-十進(jìn)制編碼(binary-coded decimal,BCD)記數(shù)法的變體來存儲。小數(shù)點的位置取決于數(shù)字的精度(p)和小數(shù)位(s)。小數(shù)位是指數(shù)字的小數(shù)部分的位數(shù),它不可以是負(fù)數(shù),也 不能大于精度。最大精度是 31 位。小數(shù)型的范圍從 -10**31+1 到 10**31-1。
*單精度浮點數(shù)(Single- precision floating-point),REAL:單精度浮點數(shù)是實數(shù)的 32 位近似值。數(shù)字可以為零,或者在從 -3.402E+38 到 -1.175E-37 或從 1.175E-37 到 3.402E+38 的范圍內(nèi)。
*雙精度浮點數(shù) (Double-precision floating-point),DOUBLE,DOUBLE PRECISION 或 FLOAT:雙精度浮點數(shù)是實數(shù)的 64 位近似值。數(shù)字可以為零,或者在從 -1.79769E+308 到 -2.225E-307 或從 2.225E-307 到 1.79769E+308 的范圍內(nèi)。
字符串是字節(jié)序列。字符串包括 CHAR(n) 類型的定長字符串和 VARCHAR(n)、LONG VARCHAR 或 CLOB(n) 類型的變長字符串。字符串的長度就是序列中的字節(jié)數(shù)。
*定長字符串,CHARACTER(n)或 CHAR(n):定長字符串的長度介于 1 到 254 字節(jié)之間。如果沒有指定長度,那么就認(rèn)為是 1 個字節(jié)。
*變長字符串,VARCHAR(n)、CHARACTER VARYING(n) 或 CHAR VARYING(n):VARCHAR(n) 類型的字符串是變長字符串,最長可達(dá) 32,672 字節(jié)。
*LONG VARCHAR:LONG VARCHAR 類型的字符串是變長字符串,最長可達(dá) 32,700 字節(jié)。
* 字符大對象字符串(Character Large Object String),CLOB(n[K|M|G]):CLOB 是變長字符串,最長可以達(dá)到 2,147,483,647 字節(jié)。如果只指定了 n,那么 n 的值就是最大長度。如果指定了 nK,那么最大長度就是 n*1,024(n 的最大值為 2,097,152)。如果指定了 nM,那么最大長度就是 n*1,048,576(n 的最大值為 2,048)。如果指定了 nG,那么最大長度就是 n*1,073,741,824(n 的最大值是 2)。CLOB 用于存儲基于大單字節(jié)字符集(single-byte character set,SBCS)字符的數(shù)據(jù)或基于混合(多字節(jié)字符集(MBCS)和 SBCS)字符的數(shù)據(jù)。圖形字符串是表示雙字節(jié)字符數(shù)據(jù)的字節(jié)序列。圖形字符串包括類型為 GRAPHIC(n) 的定長圖形字符串和類型為 VARGRAPHIC(n)、LONG VARGRAPHIC 和 DBCLOB(n) 的變長圖形字符串。字符串的長度就是序列中雙字節(jié)字符的數(shù)目。
*定長圖形字符串,GRAPHIC(n):定長圖形字符串的長度介于 1 到 127 個雙字節(jié)字符之間。如果沒有指定長度,就認(rèn)為是 1 個雙字節(jié)字符。
*變長圖形字符串,VARGRAPHIC(n):VARGRAPHIC(n) 類型的字符串是變長圖形字符串,最大長度可達(dá) 16,336 個雙字節(jié)字符。
*LONG VARGRAPHIC:LONG VARGRAPHIC 類型的字符串是變長圖形字符串,最大長度可達(dá) 16,350 個雙字節(jié)字符。
* 雙字節(jié)字符大對象字符串,DBCLOB(n[K|M|G]):雙字節(jié)字符大對象是變長雙字節(jié)字符圖形字符串,最長可達(dá) 1,073,741,823 個字符。如果只指定了 n,那么 n 就是最大長度。如果指定了 nK,那么最大長度就是 n*1,024(n 的最大值為 1,048,576)。如果指定了 nM,那么最大長度就是 n*1,048,576(n 的最大值為 1,024)。如果指定了 nG,那么最大長度就是 n*1,073,741,824(n 的最大值是 1)。DBCLOB 用于存儲基于大 DBCS(雙字節(jié)字符集,double-byte character set)字符的數(shù)據(jù)。二進(jìn)制字符串是字節(jié)序列。二進(jìn)制字符串包括 BLOB(n) 類型的變長字符串,它用于容納非傳統(tǒng)型的數(shù)據(jù),諸如圖片、語音或混合媒體等,還可以容納用戶定義的類型及用戶定義的函數(shù)的結(jié)構(gòu)化數(shù)據(jù)。
* 二進(jìn)制大對象,BLOB(n[K|M|G]):二進(jìn)制大對象是變長字符串,最長可達(dá) 2,147,483,647 字節(jié)。如果只指定了 n,那么 n 就是最大長度。如果指定了 nK,那么最大長度就是 n*1,024(n 的最大值為 2,097,152)。如果指定了 nM,那么最大長度就是 n*1,048,576(n 的最大值為 2,048)。如果指定了 nG,那么最大長度就是 n*1,073,741,824(n 的最大值是 2,也就是容量為2G)。
日期時間型數(shù)據(jù)類型包括 DATE、TIME 和 TIMESTAMP。日期時間值可在某些算術(shù)和字符串操作中使用,而且兼容某些字符串,但它們既不是字符串,也不是數(shù)字。
*DATE:DATE 是一個由三部分組成的值(年、月和日)。年份部分的范圍是從 0001 到 9999。月份部分的范圍是從 1 到 12。日部分的范圍是從 1 到 n,其中 n 的值取決于月份。DATE 列長 10 個字節(jié)。
*TIME:TIME 是一個由三部分組成的值(小時、分鐘和秒)。小時部分的范圍是從 0 到 24。分鐘和秒部分的范圍都是從 0 到 59。如果小時為 24,分鐘和秒的值都是 0。TIME 列長 8 個字節(jié)。
*TIMESTAMP: TIMESTAMP 是一個由七部分組成的值(年、月、日、小時、分鐘、秒和微秒)。年份部分的范圍是從 0001 到 9999。月份部分的范圍是從 1 到 12。日部分的范圍是從 1 到 n,其中 n 的值取決于月份。小時部分的范圍是從 0 到 24。分鐘和秒部分的范圍都是從 0 到 59。微秒部分的范圍是從 000000 到 999999。如果小時是 24,那么分鐘值、秒的值和微秒的值都是 0。TIMESTAMP 列長 26 個字節(jié)。日期時間值的字符串表示:盡管 DATE、TIME 和 TIMESTAMP 的值的內(nèi)部表示對用戶是透明的,日期、時間和時間戳記也可以用字符串來表示,CHAR 標(biāo)量函數(shù)(請參閱 SQL 的“詞類(parts of speech)”)可以用于創(chuàng)建日期時間值的字符串表示。
*日期值的字符串表示是一個以數(shù)字開始,長度不少于 8 個字符的字符串。日期值的月份和日部分中前面的零可以省略。
*時間值的字符串表示是以數(shù)字開頭,長度不少于 4 個字符的字符串。時間值的小時部分前面的零可以省略,秒部分可以完全省略。如果秒的值沒有指定,那么就認(rèn)為是 0。
* 時間戳記值的字符串表示是以數(shù)字開頭,長度不少于 16 個字符的字符串。完整的時間戳記字符串表示形式為 yyyy-mm-dd-hh.mm.ss.nnnnnn。時間戳記值的月、日或小時等幾部分前面的零可以省略,微秒可以截斷或完全省略。如果任何時間戳記值的微秒部分尾零被省略掉了,那么將假定空缺的數(shù)位上是零。
圖8
七.????? 附1:常用的DB2命令
DB2有自帶的命令中心,但是命令中心沒有關(guān)鍵字顏色提示,建議使用Quest Central for db2
常用命令列表:
1.?建立數(shù)據(jù)庫DB2_GCB?
CREATE?DATABASE?DB2_GCB?ON?G:?ALIAS?DB2_GCB?
USING?CODESET?GBK?TERRITORY?CN?COLLATE?USING?SYSTEM?DFT_EXTENT_SZ?32?
2.?連接數(shù)據(jù)庫?
connect?to?sample1?user?db2admin?using?8301206?
3.?建立別名?
create?alias?db2admin.tables?for?sysstat.tables;?
CREATE?ALIAS?DB2ADMIN.VIEWS?FOR?SYSCAT.VIEWS?
create?alias?db2admin.columns?for?syscat.columns;?
create?alias?guest.columns?for?syscat.columns;?
4.?建立表?
create?table?zjt_tables?as?
(select?*?from?tables)?definition?only;?
create?table?zjt_views?as?
(select?*?from?views)?definition?only;?
5.?插入記錄?
insert?into?zjt_tables?select?*?from?tables;?
insert?into?zjt_views?select?*?from?views;?
6.?建立視圖?
create?view?V_zjt_tables?as?select?tabschema,tabname?from?zjt_tables;?
????7.?建立觸發(fā)器?
CREATE?TRIGGER?zjt_tables_del?
AFTER?DELETE?ON?zjt_tables?
REFERENCING?OLD?AS?O?
FOR?EACH?ROW?MODE?DB2SQL?
Insert?into?zjt_tables1?values(substr(o.tabschema,1,8),substr(o.tabname,1,10))?
8.?建立唯一性索引?
CREATE?UNIQUE?INDEX?I_ztables_tabname?
ON?zjt_tables(tabname);?
9.?查看表?
select?tabname?from?tables?
where?tabname='ZJT_TABLES';?
10.?查看列?
select?SUBSTR(COLNAME,1,20)?as?列名,TYPENAME?as?類型,LENGTH?as?長度?
from?columns?
where?tabname='ZJT_TABLES';?
11.?查看表結(jié)構(gòu)?
db2?describe?table?user1.department?
db2?describe?select?*?from?user.tables?
12.?查看表的索引?
db2?describe?indexes?for?table?user1.department?
13.?查看視圖?
select?viewname?from?views?
where?viewname='V_ZJT_TABLES';?
14.?查看索引?
select?indname?from?indexes?
where?indname='I_ZTABLES_TABNAME';?
15.?查看存貯過程?
SELECT?SUBSTR(PROCSCHEMA,1,15),SUBSTR(PROCNAME,1,15)?
FROM?SYSCAT.PROCEDURES;?
?
17.?重新連接?
connect?reset?
18.?中斷數(shù)據(jù)庫連接?
disconnect?db2_gcb?
19.?view?application?
LIST?APPLICATION;?
20.?kill?application?
FORCE?APPLICATION(0);?
db2?force?applications?all?(強(qiáng)迫所有應(yīng)用程序從數(shù)據(jù)庫斷開)?
21.?lock?table
lock?table?test?in?exclusive?mode?
22.?共享?
lock?table?test?in?share?mode?
23.?顯示當(dāng)前用戶所有表?
list?tables?
24.?列出所有的系統(tǒng)表?
list?tables?for?system?
25.?顯示當(dāng)前活動數(shù)據(jù)庫?
list?active?databases?
26.?查看命令選項?
list?command?options?
27.?系統(tǒng)數(shù)據(jù)庫目錄?
LIST?DATABASE?DIRECTORY?
28.?表空間?
list?tablespaces?
29.?表空間容器?
LIST?TABLESPACE?CONTAINERS?FOR?
Example:?LIST?TABLESPACE?CONTAINERS?FOR?1?
30.?顯示用戶數(shù)據(jù)庫的存取權(quán)限?
GET?AUTHORIZATIONS?
31.?啟動實例?
DB2START?
32.?停止實例?
db2stop?
33.?表或視圖特權(quán)?
grant?select,delete,insert,update?on?tables?to?user?
grant?all?on?tables?to?user?WITH?GRANT?OPTION?
34.?程序包特權(quán)?
GRANT?EXECUTE?
ON?PACKAGE?PACKAGE-name?
TO?PUBLIC?
35.?模式特權(quán)?
GRANT?CREATEIN?ON?SCHEMA?SCHEMA-name?TO?USER?
36.?數(shù)據(jù)庫特權(quán)?
grant?connect,createtab,dbadm?on?database?to?user?
37.?索引特權(quán)?
grant?control?on?index?index-name?to?user?
38.?信息幫助?(??XXXnnnnn?)?
例:??SQL30081?
39.?SQL?幫助(說明?SQL?語句的語法)?
help?statement?
例如,help?SELECT?
40.?SQLSTATE?幫助(說明?SQL?的狀態(tài)和類別代碼)?
??sqlstate?或???class-code?
41.?更改與"管理服務(wù)器"相關(guān)的口令?
db2admin?setid?username?password?
42.?創(chuàng)建?SAMPLE?數(shù)據(jù)庫?
db2sampl?
db2sampl?F:(指定安裝盤)?
43.?使用操作系統(tǒng)命令?
!?dir?
44.?轉(zhuǎn)換數(shù)據(jù)類型?(cast)?
SELECT?EMPNO,?CAST(RESUME?AS?VARCHAR(370))?
FROM?EMP_RESUME?
WHERE?RESUME_FORMAT?=?'ascii'?
45.?UDF
要運(yùn)行?DB2?Java?存儲過程或?UDF,還需要更新服務(wù)器上的?DB2?數(shù)據(jù)庫管理程序配置,以包括在該機(jī)器上安裝?JDK?的路徑?
db2?update?dbm?cfg?using?JDK11_PATH?d:\sqllib\java\jdk?
TERMINATE?
update?dbm?cfg?using?SPM_NAME?sample?
46.?檢查?DB2?數(shù)據(jù)庫管理程序配置?
db2?get?dbm?cfg?
47.?檢索具有特權(quán)的所有授權(quán)名?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'DATABASE'?FROM?SYSCAT.DBAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'TABLE?'?FROM?SYSCAT.TABAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'PACKAGE?'?FROM?SYSCAT.PACKAGEAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'INDEX?'?FROM?SYSCAT.INDEXAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'COLUMN?'?FROM?SYSCAT.COLAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'SCHEMA?'?FROM?SYSCAT.SCHEMAAUTH?
UNION?
SELECT?DISTINCT?GRANTEE,?GRANTEETYPE,?'SERVER?'?FROM?SYSCAT.PASSTHRUAUTH?
ORDER?BY?GRANTEE,?GRANTEETYPE,?3?
create?table?yhdab?
(id?varchar(10),?
password?varchar(10),?
ywlx?varchar(10),?
kh?varchar(10));?
create?table?ywlbb?
(ywlbbh?varchar(8),?
ywmc?varchar(60))?
48.?修改表結(jié)構(gòu)?
alter?table?yhdab?ALTER?kh?SET?DATA?TYPE?varchar(13);?
alter?table?yhdab?ALTER?ID?SET?DATA?TYPE?varchar(13);?
alter?table?lst_bsi?alter?bsi_money?set?data?type?int;?
insert?into?yhdab?values?
('20000300001','123456','user01','20000300001'),?
('20000300002','123456','user02','20000300002');?
49.增加licence
? db2licm -a path(如d:\DB2\db2udbee.lic)
?
八.????? 附2:列函數(shù)
列函數(shù)對列中的一組值進(jìn)行運(yùn)算以得到單個結(jié)果值。下列就是一些列函數(shù)的示例。?
AVG?
返回某一組中的值除以該組中值的個數(shù)的和?
COUNT?
返回一組行或值中行或值的個數(shù)?
MAX?
返回一組值中的最大值?
MIN?
返回一組值中的最小值?
九.????? 附3:標(biāo)量函數(shù)
標(biāo)量函數(shù)對值進(jìn)行某個運(yùn)算以返回另一個值。下列就是一些由DB2?通用數(shù)據(jù)庫提供的標(biāo)量函數(shù)的示例。?
ABS?
返回數(shù)的絕對值?
HEX?
返回值的十六進(jìn)制表示?
LENGTH?
返回自變量中的字節(jié)數(shù)(對于圖形字符串則返回雙字節(jié)字符數(shù)。)?
YEAR?
抽取日期時間值的年份部分?
二進(jìn)制大對象?(BLOB)?字符串。?
字符大對象?(CLOB)?字符串,它的字符序列可以是單字節(jié)字符或多字節(jié)字符,或這兩者的組合。?
雙字節(jié)字符大對象?(DBCLOB)?字符串,它的字符序列是雙字節(jié)字符。?
數(shù)據(jù)庫范式
第一種規(guī)范形式:表中的每一行和每一列均有一個值,永遠(yuǎn)不會是一組值。?
第二種規(guī)范形式:不在關(guān)鍵字中的每一列提供取決于整個關(guān)鍵字的事實。?
第三種規(guī)范形式:每個非關(guān)鍵字列提供與其他非關(guān)鍵字列無關(guān)并只取決于該關(guān)鍵字的事實。?
第四種規(guī)范形式:沒有行包含有關(guān)一個實體的兩個或更多個獨立的多值事實。?
十.????? DB2重裝
1.打開控制面板選擇添加刪除程序中,卸掉DB2應(yīng)該程序。
2.DB2在安裝后會在安裝目錄相應(yīng)的盤下生成一個DB2的文件夾,如:C:\DB2\NODE0000(安裝在D盤就為:D:\DB2\NODE0000),卸載后應(yīng)用程序后,再刪除NODE0000文件就可以了,不如不刪NODE0000,重裝時會報錯,而且重裝后DB2跑不起來
?
?