在DB2數據庫中,復制已經存在的表的結構及其數據。我們采用兩步走方式:第一步先復制表結構,第二部拷貝數據。
第一步:復制表結構
方法一:
Create table test_Rate as (select * from t_Rate) Definition only; --test_Rate是新表,t_Rate是老表
方法二:
Create table test_Rate like t_Rate; --test_Rate 是新表,t_Rate是老表
說明:上述方式創建的新表不復制老表的主鍵,約束,索引,非空,默認值,數據。且創建的新表放在用戶的臨時表空間中。
/*----查詢新表test_Rate的主鍵,表空間----*/ select keycolumns,keyindexid,tbspace from syscat.tables where tabname='TEST_RATE' --keycolumns:表示有幾個字段組成聯合主鍵,keyindexid:等於0表示沒有主鍵
/*----查詢新表test_Rate的索引----*/ select * from syscat.indexes where tabname='TEST_RATE'; --上述查詢有記錄表示表有索引,反之沒有
/*----查詢新表test_Rate的記錄條數----*/ select count(1) from test_Rate
第二步:插入數據
insert into test_Rate select * from t_Rate where '條件';
通過以上操作,會拷貝t_Rate的表結構及數據至test_Rate表上。
