WEB开发网
开发学院数据库DB2 通过IBM Migration Toolkit的支持把数据从MySQL迁... 阅读

通过IBM Migration Toolkit的支持把数据从MySQL迁移到DB2和Informix Dynamic

 2010-05-14 15:00:44 来源:WEB开发网   
核心提示:清单 1a 和清单 1b 说明 MySQL 数据类型和 create table 语句如何转换为 DB2 语法:清单 1a. MySQL SQL - CREATE TABLECREATE TABLE tab1 (col1 CHAR(20),col2 VARCHAR(30),col3 SMALLINT(20),col4

清单 1a 和清单 1b 说明 MySQL 数据类型和 create table 语句如何转换为 DB2 语法:

清单 1a. MySQL SQL - CREATE TABLE

CREATE TABLE tab1 (
col1 CHAR(20),
col2 VARCHAR(30),
col3 SMALLINT(20),
col4 TINYINT(30),
col5 MEDIUMINT(20),
col6 INT(10),
col7 INTEGER(20),
col8 BIGINT(20),
col9 REAL,
col10 DOUBLE,
col11 FLOAT,
col12 DECIMAL(10,4),
col13 NUMERIC(10,4),
col14 DATE,
col15 TIME,
col16 TIMESTAMP,
col17 DATETIME,
col18 YEAR,
col19 BIT
);

清单 1b. MTK 转换 - CREATE TABLE

CREATE TABLE tab1(
col1 CHAR(20),
col2 VARCHAR(30),
col3 SMALLINT,
col4 SMALLINT,
col5 INTEGER,
col6 INTEGER,
col7 INTEGER,
col8 BIGINT,
col9 DOUBLE,
col10 DOUBLE,
col11 DOUBLE,
col12 DECIMAL(10,4),
col13 DECIMAL(10,4),
col14 DATE,
col15 TIME,
col16 TIMESTAMP,
col17 TIMESTAMP,
col18 CHAR(4),
col19 SMALLINT
);

如果有一对一映射,MTK 就把所有列级和表级约束转换为等效的 DB2 语法。如果没有一对一映射,MTK 会把语法映射为 DB2 中的等效功能或者发出警告。清单 2a 演示 AUTO_INCREMENT 的转换。

清单 2a. MySQL SQL - 递增函数

CREATE TABLE tab2(
col1 INTEGER NOT NULL AUTO_INCREMENT,
col2 CHAR(20) NOT NULL,
PRIMARY KEY (col1)
);

注意:AUTO INCREMENT:整数列可以具有 AUTO_INCREMENT 属性。在 AUTO_INCREMENT 列中插入 NULL(推荐)或 0 值时,列会被设置为下一个序列值。通常,这个值是表中这个列中当前的最大值加 1。AUTO_INCREMENT 序列从 1 开始。

清单 2b. MTK 转换 - 递增函数

CREATE TABLE tab2(
col1 INTEGER GENERATED BY DEFAULT AS IDENTITY NOT NULL,
col2 CHAR(20) NOT NULL,
PRIMARY KEY(col1)
);

上一页  1 2 3 4 5 6 7  下一页

Tags:通过 IBM Migration

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接