-- 假设我们有一个名为 "employees" 的表,需要从 Oracle 迁移到 MySQL
-- 步骤1: 创建表
CREATE TABLE `employees` (
`id` INT NOT NULL AUTO_INCREMENT,
`first_name` VARCHAR(50) NOT NULL,
`last_name` VARCHAR(50) NOT NULL,
`email` VARCHAR(100) NOT NULL,
`phone_number` VARCHAR(20),
`hire_date` DATE NOT NULL,
`job_id` VARCHAR(10) NOT NULL,
`salary` DECIMAL(10, 2) NOT NULL,
`commission_pct` DECIMAL(4, 2),
`manager_id` INT,
`department_id` INT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 步骤2: 数据迁移
-- 假设Oracle数据库中的表可以通过以下查询获取:
INSERT INTO `employees` (id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id)
SELECT employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id
FROM oracle_table_name;
-- 注意: 需要替换 "oracle_table_name" 为 Oracle 中实际的表名
-- 以及根据实际的字段名和类型调整 INSERT 和 SELECT 语句中的字段名和类型
这个例子展示了如何在Oracle和MySQL之间迁移数据。它首先在MySQL中创建一个与Oracle中的表结构相匹配的表,然后使用INSERT INTO ... SELECT语句从Oracle表中复制数据到MySQL表中。在实际操作中,还需要考虑数据类型的转换和字段的对应关系,以及如何处理Oracle特有的数据类型和函数。