Posted on 2006-04-10 10:52
龍~天飛 閱讀(1904)
評論(0) 編輯 收藏 所屬分類:
DB Technology
我們用db2look命令得到數據庫對象的DDL
腳本
DB2的db2look命令詮釋如下:
db2look 版本 8.2
db2look:生成 DDL 以便重新創建在數據庫中定義的對象
語法: db2look -d DBname [-e] [-u Creator] [-z Schema] [-t Tname1 Tname2...TnameN] [-tw Tname] [-h] [-o Fname] [-a]
??????????????????????? [-m] [-c] [-r] [-l] [-x] [-xd] [-f] [-fd] [-td x] [-noview] [-i userID] [-w password]
??????????????????????? [-v Vname1 Vname2 ... VnameN]
??????????????????????? [-wrapper WrapperName] [-server ServerName] [-nofed]
????? db2look -d DBname [-u Creator] [-s] [-g] [-a] [-t Tname1 Tname2...TnameN]
?????? ???????????????? [-p] [-o Fname] [-i userID] [-w password]
????? db2look [-h]
??????? -d: 數據庫名稱:這必須指定
??????? -e: 抽取復制數據庫所需要的 DDL 文件
??????????? 此選項將生成包含 DDL 語句的腳本
??????????? 可以對另一個數據庫運行此腳本以便重新創建數據庫對象
??????????? 此選項可以和 -m 選項一起使用
??????? -u: 創建程序標識:若 -u 和 -a 都未指定,則將使用 $USER
??????????? 如果指定了 -a 選項,則將忽略 -u 選項
??????? -z: 模式名:如果同時指定了 -z 和 -a,則將忽略 -z
??????????? 聯合部分的模式名被忽略
??????? -t: 生成指定表的統計信息
??????????? 可以指定的表的數目最多為 30
???????-tw: 為名稱與表名的模式條件(通配符)相匹配的表生成 DDL
??????????? 當指定了 -tw 選項時,-t 選項會被忽略
??????? -v: 只為視圖生成 DDL,當指定了 -t 時將忽略此選項
??????? -h: 更詳細的幫助消息
??????? -o: 將輸出重定向到給定的文件名
??????????? 如果未指定 -o 選項,則輸出將轉到 stdout
??????? -a: 為所有創建程序生成統計信息
??????????? 如果指定了此選項,則將忽略 -u 選項
??????? -m: 在模擬方式下運行 db2look 實用程序
??????????? 此選項將生成包含 SQL UPDATE 語句的腳本
??????????? 這些 SQL UPDATE 語句捕獲所有統計信息
??????????? 可以對另一個數據庫運行此腳本以便復制初始的那一個
??????????? 當指定了 -m 選項時,將忽略 -p、-g 和 -s 選項
????????-c: 不要生成模擬的 COMMIT 語句
??????????? 除非指定了 -m 或 -e,否則將忽略此選項
??????????? 將不生成 CONNECT 和 CONNECT RESET 語句
??????????? 省略了 COMMIT。在執行腳本之后,需要顯式地進行落實。
????????-r: 不要生成模擬的 RUNSTATS 語句
??????????? 缺省值為 RUNSTATS。僅當指定了 -m 時,此選項才有效
??????? -l: 生成數據庫布局:數據庫分區組、緩沖池和表空間。
??????? -x: 如果指定了此選項,則 db2look 實用程序將生成授權 DDL
??????????? 對于現有已授權特權,不包括對象的原始定義器
???????-xd: 如果指定了此選項,則 db2look 實用程序將生成授權 DDL
??????????? 對于現有已授權特權,包括對象的原始定義器
??????? -f: 抽取配置參數和環境變量
??????????? 如果指定此選項,將忽略 -wrapper 和 -server 選項
???????-fd: 為 opt_buffpage 和 opt_sortheap 以及其它配置和環境參數生成 db2fopt 語句。
?????? -td: 將 x 指定為語句定界符(缺省定界符為分號(;))
??????????? 應該與 -e 選項一起使用(如果觸發器或者 SQL 例程存在的話)
??????? -p: 使用明文格式
??????? -s: 生成 postscript 文件
??????????? 此選項將為您生成 postscript 文件
??????????? 當設置了此選項時,將除去所有 latex 和 tmp ps 文件
??????????? 所需的(非 IBM)軟件:LaTeX 和 dvips
??????????? 注意:文件 psfig.tex 必須在 LaTeX 輸入路徑中
??????? -g: 使用圖形來顯示索引的頁訪存對
??????????? 必須安裝 Gnuplot,并且 <psfig.tex> 必須在您的 LaTeX 輸入路徑中
??????????? 還將隨 LaTeX 文件一起生成 <filename.ps> 文件
??????? -i: 登錄到數據庫駐留的服務器時所使用的用戶標識
??????? -w: 登錄到數據庫駐留的服務器時所使用的密碼
?? -noview: 不要生成 CREATE VIEW ddl 語句
? -wrapper: 為適用于此包裝器的聯合對象生成 DDL
??????????? 生成的對象可能包含下列各項:
??????????? 包裝器、服務器、用戶映射、昵稱、類型映射、
??????????? 函數模板、函數映射和索引規范
?? -server: 為適用于此服務器的聯合對象生成 DDL
??????????? 生成的對象可能包含下列各項:
??????????? 包裝器、服務器、用戶映射、昵稱、類型映射、
??????????? 函數模板、函數映射和索引規范
??? -nofed: 不要生成 Federated DDL
??????????? 如果指定此選項,將忽略 -wrapper 和 -server 選項
LaTeX 排版:latex filename.tex 以獲得 filename.dvi
示例: db2look -d DEPARTMENT -u walid -e -o db2look.sql
?-- 這將生成由用戶 WALID 創建的所有表和聯合對象的 DDL 語句
?-- db2look 輸出被發送到名為 db2look.sql 的文件中
示例: db2look -d DEPARTMENT -z myscm1 -e -o db2look.sql
?-- 這將為模式名為 MYSCM1 的所有表生成 DDL 語句
?-- 還將生成 $USER 創建的所有聯合對象的 DDL。
?-- db2look 輸出被發送到名為 db2look.sql 的文件中
示例: db2look -d DEPARTMENT -u walid -m -o db2look.sql
?-- 這將生成 UPDATE 語句以捕獲關于用戶 WALID 創建的表/昵稱的統計信息
?-- db2look 輸出被發送到名為 db2look.sql 的文件中
示例: db2look -d DEPARTMENT -u walid -e -wrapper W1 -o db2look.sql
?-- 這將生成由用戶 WALID 創建的所有表的 DDL 語句
?-- 還將生成適用于包裝器 W1 的用戶 WALID 所創建所有聯合對象的 DDL
?-- db2look 輸出被發送到名為 db2look.sql 的文件中
示例: db2look -d DEPARTMENT -u walid -e -server S1 -o db2look.sql
?-- 這將生成由用戶 WALID 創建的所有表的 DDL 語句
?-- 還將生成適用于服務器 S1 的用戶 WALID 所創建所有聯合對象的 DDL
?-- db2look 輸出被發送到名為 db2look.sql 的文件中