社区
Java EE
帖子详情
oracle里如何将一张表的数据导入另外一张表?
h54068650
2011-07-01 01:54:37
我现在需要做一个功能,在oracle里把一张表里的数据导入到另外一张表(2个表的字段不一样),请问各位,如何实现?写存储过程吗?还是???
...全文
1705
27
打赏
收藏
oracle里如何将一张表的数据导入另外一张表?
我现在需要做一个功能,在oracle里把一张表里的数据导入到另外一张表(2个表的字段不一样),请问各位,如何实现?写存储过程吗?还是???
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
27 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
h54068650
2011-07-05
打赏
举报
回复
难道没有其他办法了吗?
ArayChou
2011-07-04
打赏
举报
回复
[Quote=引用 6 楼 h54068650 的回复:]
insert into B(字段) values (select 字段 from A )
这样行吗?100W条左右的数据,这得需要多久?
[/Quote]
这样肯定行,且是最好的方法,没有比他更简单更高效的了.
如果要更快,加上nologging关键字
需要的时间不好判断,这条sql语句的瓶颈在于IO. 要看你这100W条数据到底有多少字节,还有你的存储设备速度多快.
DavidChou
2011-07-04
打赏
举报
回复
insert into tab(a,b,c) select a,b,c from tab2.....
h54068650
2011-07-04
打赏
举报
回复
[Quote=引用 18 楼 viszl 的回复:]
引用 16 楼 h54068650 的回复:
直接路径加载?大哥们,麻烦说清楚一点可以吗?
你可以查一下sqlldr
是一种高速批量数据加载工具,有两种模式,传统路径使用用sql插入,直接路径可以直接格式化数据库快,绕过sql引擎,不产生undo信息,甚至redo
[/Quote]
我这个是直接在PL/SQL中执行的,JDBC。。。
h54068650
2011-07-04
打赏
举报
回复
谢谢19楼火龙果大大的建议。
比如说,我有A,B2张表,A表里有ID(int),name(varchar2),age(int)3个字段,这个表里面有100多W条数据,B表里有ID(int),name(varchar2),age(int),sex(char),adddate(date),operator(varchar2)6个字段,现在需要把表A的数据全部导入到表B里面,2张表只有ID为序列主键,其他字段均可为空。请问大家有什么好的方法没有?insert select除了这一种之外?
安心逍遥
2011-07-04
打赏
举报
回复
貌似复制粘贴都可以完成啊
Spring源码解析
2011-07-01
打赏
举报
回复
字段不一样也行吗 用insert select
火龙果被占用了
2011-07-01
打赏
举报
回复
不一样的话,那不同的字段填充什么数据?这些字段是否可为空?
建议提问题之前看一下:
提问的慧
http://community.csdn.net/IndexPage/SmartQuestion.aspx
loveofmylife
2011-07-01
打赏
举报
回复
[Quote=引用 16 楼 h54068650 的回复:]
直接路径加载?大哥们,麻烦说清楚一点可以吗?
[/Quote]
你可以查一下sqlldr
是一种高速批量数据加载工具,有两种模式,传统路径使用用sql插入,直接路径可以直接格式化数据库快,绕过sql引擎,不产生undo信息,甚至redo
loveofmylife
2011-07-01
打赏
举报
回复
[Quote=引用 14 楼 h54068650 的回复:]
求哪位大神教写存储过程~
[/Quote]
单纯的100W数据插入不用使用存储过程,没意义,jdbc中提供的批量更新的api,和存储过程中使用forall语句批量更新是一样的
h54068650
2011-07-01
打赏
举报
回复
直接路径加载?大哥们,麻烦说清楚一点可以吗?
loveofmylife
2011-07-01
打赏
举报
回复
100W数据对ORACLE来说很快就能插入的,一般不会引入什么性能问题(当然不考虑表类型索引等因素的影响)
想要更快一点就可以使用使用直接路径加载,使用批量插入
h54068650
2011-07-01
打赏
举报
回复
求哪位大神教写存储过程~
xianaofei
2011-07-01
打赏
举报
回复
insert into B(字段) values (select 字段 from A )
你或者用export
zn85600301
2011-07-01
打赏
举报
回复
这个要提升性能也就只能写存储过程了
100W的数据量一般的机子还是能抗住的
如果数据量再大的话 估计就得考虑使用ETL工具了
h54068650
2011-07-01
打赏
举报
回复
我说的字段不一样是,A表可能比B表多字段,也可能少字段,也有可能字段类型不一样~
而且估计的跑1个小时吧!
carnation1985
2011-07-01
打赏
举报
回复
[Quote=引用 8 楼 h54068650 的回复:]
但是我现在要做的是A表和B表的字段不一样 - -!
坐等大神求解决~
[/Quote]
字段类型不一样,就在select 字段 from A语句中,把字段转换成和B表一样的类型
Seady
2011-07-01
打赏
举报
回复
你本机跑回很慢,100W的数据量,可能要那么几个小时吧
h54068650
2011-07-01
打赏
举报
回复
但是我现在要做的是A表和B表的字段不一样 - -!
坐等大神求解决~
carnation1985
2011-07-01
打赏
举报
回复
[Quote=引用 6 楼 h54068650 的回复:]
insert into B(字段) values (select 字段 from A )
这样行吗?100W条左右的数据,这得需要多久?
[/Quote]
行,A 表 和 B表 相对应的字段类型要一样
加载更多回复(6)
转两种方法将
oracle
数据
库中的
一张
表
的
数据
导入
到另外一个
oracle
数据
库中
oracle
数据
库实现
一张
表
的
数据
导入
到另外一个
数据
库的
表
中的方法有很多,在这介绍两个。缺点是:当
数据
量大的时候,
oracle
数据
库执行这些insert语句,效率会很低。总结:如果是
oracle
数据
库,推荐使用第二种方法,比...
两种方法将
oracle
数据
库中的
一张
表
的
数据
导入
到另外一个
oracle
数据
库中
oracle
数据
库实现
一张
表
的
数据
导入
到另外一个
数据
库的
表
中的方法有很多,在这介绍两个。 第一种,把
oracle
查询的
数据
导出为sql文件,执行sql文件
里
的insert语句,如下: 第一步,导出sql文件: 第二步:用PL/...
oracle
复制
一张
表
的
数据
到另
一张
表
【代码】
oracle
复制
一张
表
的
数据
到另
一张
表
。
Oracle
数据
表
的
导入
与导出操作详解
数据
表
的
导入
与导出是在
Oracle
数据
库中常用的操作,通过这些操作可以方便地将
数据
表
从一个
数据
库实例导出到另一个
数据
库实例,或者将
数据
表
备份到本地文件。本文将详细介绍如何进行
Oracle
数据
表
的
导入
与导出操作,并...
Oracle
跨库
数据
同步以及跨库将
一张
表
数据
导入
到另
一张
表
一、第一我们假设A
表
是主
表
,B
表
是副
表
,业务需求是是将A
表
的
数据
导入
到B
表
,好那么我们需要做的就是采用dblink的方式,将A
表
所有
数据
查询出来然后插入到B
表
。ps:这
里
我将给出
一张
测试用
表
USR(A,B两张
表
都是USR)...
Java EE
67,549
社区成员
225,860
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章