oracle_将一个数据库的某一张表复制到另一个数据库(表名与表结构结构相同,数据库不同)
插入表时,数据重复会报错,可以只插入具体的数据,删除重复的数据或者删除整张表之后再插入。
delete from 表名 where 条件; --如有提示重复,可删除重复的数据。全部删除也可。
1.不同数据库
数据库:数据库A表名:student 数据库A的库名:school_A
数据库B表名:student
insert into student
--要把数据插入数据库B中的student表
select * from student@school_A
--数据库A:school_A 中的student表(注意1:school_A需要是登录状态 注意2:输入@时,会有提示)
where rownum <=500;
--数据库A的student表的前500个数据,如不写,代表整张表的数据全部复制到A表
--where后面也可以写其他查询条件
commit;
--提交
(写成四行,便于区分。
1.如果提示有错误字符,把所有的注释删除
2.如果提示插入错误等信息,建议先插入数据库B中没有的数据,看能否插入成功,如果插入成功,就是数据重复了,需要把数据重复的删除,或者全部删除,把数据库A的内容全部复制
3.数据必填项未填写,在数据库A中的数据,查看该数据表是否有必填项未填写)
2.同一数据库
插入方式1:
insert into 目标表 select * from 源表; --将 源表 的数据复制到 目标表
插入方式2:(源表和目标表可以不一样,将搜索到的结果插入到对应表的对应字段中)
inset into 目标表 (字段1,字段2,字段3,字段4 )
select 字段1,字段2,字段3,字段4 from 源表 where 条件 ;
3.将同一张表的字段数据插入到另一张表的字段数据中
insert into test2(name,age) select name,age from test1;
将test1 name 和 age 字段的值插入test2 name 和 age 字段
4.将同一张test表的字段A的值复制到字段B中
update test set B = A;
5.同一数据库,不同用户
用户:A B
delete from 表名 where 条件; --删除重复的数据。全部删除也可
insert into A.test select * from B.test where 条件;
将B表的搜索结果插入A表的test,两张表名一样,或者全部字段名一样也可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)