Oracle/plsql将一个表中的数据复制到另一个表中(两表在同一数据库)
- 创建数据库
-- Create table
create table STUDENTDEMODEMODEMO
(
id VARCHAR2(20),
name VARCHAR2(20)
)
-- DATA为自己的表空间
tablespace DATA
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
给数据库表添加字段
insert into STUDENTDEMODEMODEMO values ( '1','张三');
insert into STUDENTDEMODEMODEMO values ( '2','李四');
insert into STUDENTDEMODEMODEMO values ( '3','王五');
insert into STUDENTDEMODEMODEMO values ( '4','赵六')
当新建表不存在的情况下,从已知表中复制数据
//将表中所有的字段和数据复制
create table STUDENTDEMODEMODEMO_copy as select * from STUDENTDEMODEMODEMO
//将表中指定的字段和数据复制
create table STUDENTDEMODEMODEMO_copy as select id,NAME from STUDENTDEMODEMODEMO
当新建表存在的情况下,从已知表中复制数据
//将表中指定的字段复制,在新建表存在且有数据的时候,复制的数据会在后边添加
insert into STUDENTDEMODEMODEMO_copy(id,name) select id,name from STUDENTDEMODEMODEMO
insert into STUDENTDEMODEMODEMO_copy(id) select id from STUDENTDEMODEMODEMO