在Oracle中,Primary Key(主键)是用于唯一标识表中每个记录的一个或多个字段
CREATE TABLE target_table (
id NUMBER PRIMARY KEY,
name VARCHAR2(50),
age NUMBER
);
INSERT INTO target_table (id, name, age)
SELECT id, name, age FROM source_table;
SELECT COUNT(*) FROM source_table;
SELECT COUNT(*) FROM target_table;
CREATE SEQUENCE target_seq
START WITH (SELECT MAX(id) FROM source_table)
INCREMENT BY 1;
修改主键约束:如果目标表中的主键约束不是自增序列,需要手动修改主键值,确保唯一性。
重建索引:如果源表中有索引,需要在目标表中重建相应的索引。
CREATE INDEX idx_name ON target_table (name);
ALTER TABLE source_table RENAME TO old_source_table;
ALTER TABLE target_table RENAME TO source_table;
注意:在执行数据迁移过程中,请确保对源表和目标表进行备份,以防止数据丢失或损坏。在生产环境中,建议在专业数据库管理员的指导下进行操作。