2011年1月26日 星期三

2010年8月8日 星期日

ORACLE: 使用現有table ,複製相同schema之新table

SQL> create table scott.emp_new as select * from scott.emp
2 where 1 = 0
3 /

2009年3月8日 星期日

DB2中系統自動產生的table (Explain_、TYYYYMMDDYY_xxxxxx、TYYYYMMDDYY_xxxxxx_exception)

在使用DB2時,會發現有些table明明不是我們自己建的table莫名其妙的跑了出來。
這些table通常都是以Explain_為開頭,或table名稱格式為TYYYYMMDDYY_xxxxxx、TYYYYMMDDYY_xxxxxx_exception,這些table的功用為:
  1. Explain:
    DB2中 EXPLAIN_開頭的table為DB2執行計畫工具所產的表格,主要存放SQL 執行計畫(Execute Plan)。
    通常在DB2 Client工具第一次用到 執行計劃 功能 會自動建立,如下圖。或由DBA透過執行(DB2安裝目錄)/sqllib/misc/EXPLAIN.DDL腳本產生。

    關於這組table的詳細資訊可參考:
    http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/r0008441.htm

  2. table名稱格式為TYYYYMMDDYY_xxxxxx、TYYYYMMDDYY_xxxxxx_exception:
    執行 DB2 Load公用程式 或 DB2控制中心 工具做匯入資料時,若有違反 table Constraint無法寫入資料時,會將暫存資料和無法寫入的資料放在這兩個table中。