基於DB2及PHP的應用系統跨平台遷移詳細步驟(二)

來源:互聯網
上載者:User

5.處理資料庫表中的自增欄位

對於需要載入的含有自增欄位的表,即該表的 ixf 資料檔案中有自增列的值, 可以在 load 命令中加入如下參數控制自增欄位值:

1). modified by identityignore :載入的資料檔案中有自增欄位值,load 時忽略資料檔案中自增欄位值 ;

2). modified by identitymissing :載入的資料檔案中沒有自增欄位值,load 時自動產生自增欄位值 ;

3). modified by identityoverride :載入的資料檔案中有自增欄位值,load 時使用資料檔案中的自增欄位值 。

為了使目標資料庫中含有自增欄位的表中資料與來源資料庫中的資料保持一致,本文執行個體中選擇使用 modified by identityoverride 參數,在匯入資料時使用資料檔案中的自增欄位值。讀者可以根據不同情況選擇適當的控制參數。

首先,在 srcdb1_tables.ddl 檔案中尋找所有包自增欄位的表名 ( 含有 GENERATED ALWAYS AS IDENTITY 欄位的表 ),然後在 srcdb1_load.sql 中將 modified by identityoverride 語句片段插入到這些含有自增欄位的表所對應的 load 命令列中。

清單8. load 指令碼中自增欄位處理

db2 load from test.ixf of ixf modified by identityoverride insert into TEST;

6.執行匯出指令碼

執行匯出指令碼,匯出所有表的資料 。

# db2 -tvf srcdb1_export.sql

匯出的表資料以 ixf 格式存放於當前路徑下。

7.儲存指令碼和資料檔案

將所有 DDL 指令碼以及資料檔案 *.ixf 複製到目標系統所在網站。

LINUX 系統上的操作

1.通過命令列處理器(CLP)建立執行個體 SRCDB1:

# db2icrt SRCDB1

2.使用 CREATE DATABASE 命令建立資料庫 SRCDB1,建立必要的資料表空間及配置必要的資料庫參數。

# db2 create database SRCDB1

3.串連到資料庫 SRCDB1,執行 srcdb1_tables.ddl 指令碼建立緩衝池,資料表空間,UDF,表以及 Index,Sequence,視圖等資料庫物件。

# db2 connect to srcdb1

# db2 -tvf srcdb1_tables.ddl

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.