oracle数据的导入 我现在的数据都提供在excel的表格上怎么把它都导入oracle数据库,(比如说现在有俩个字段 name,age )怎么导入?谢谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 另存为CSV格式,用PLSQL Developer或sqlldr命令PLSQL Developer:工具--->文本导入器如果文本内容不大也可以select * from XXX for update然后复制-粘贴 excel文件连接成逗号分隔符的csv文件,之后用sqlldr命令导入。导入需要写一个ctl控制文件,sqlldr命令中会按照这个ctl控制文件描述的规则把文件导入到指定的表中。ctl文件写法如下: LOAD DATA /*固定格式*/ INFILE 'D:\csvdata.csv' /*导入文件的文件名,就是你的csv文件名和路径*/ TRUNCATE /*导入的方式,TRUNCATE方式就是把原表原有数据删了再导入,还有别的方式你可以网上找找*/ INTO TABLE YOUR_TABLE /*导入的表名称*/ FIELDS TERMINATED "," /*使用的数据分隔符,你的csv是逗号分隔符就用逗号*/ TRAILING NULLCOLS /*允许字段为空值,这个必须有*/ ( /*以下这些是导入数据的字段名称*/ name CHAR, age CHAR, TRUNCATE_DATE SYSDATE,/*可以多插入一行变量数据,例如系统时间*/ TRUNCATE_STUS "0" /*也可以多插入一行常量数据*/ )之后你把这个ctl文件放在一个文件夹里比如D:\Load\ctl\csvinsert.ctl之后是sqlldr命令,你可以做成一个bat批处理文件保存就不用以后一直写了,格式如下:sqlldr username/password@orcl direct = true readsize = 10485760 bindsize = 2560000 rows = 50000 control="D:\Load\ctl\csvinsert.ctl" log="D:\Load\log\csvinsert.log bad=D:\Load\bad\csvinsert.bad"其中direct = true貌似是和oracle的compress数据压缩配合使用的,readsize = 10485760 bindsize = 2560000 rows = 50000是指定导入的时候一次跳多少记录,参数是我随便设的你可以研究下怎么设最好,后面的log会记录日志,bad问价会记录没有导入成功的数据,默认50条写满就直接停止导入了,可以通过参数设置其大小,你可以从网上找找。 sql语句求助!!!! oracle job每月指定若干日期调度问题 急急急,IMP-00058: 遇到 ORACLE 错误 3113 PL/SQL(9i) → PL/SQL(11G)的问题 奇怪的SQL语句问题!紧急求助! 如何安装ORACLE目录服务? 菜鸟问题 如何在PLSQL 中写视图 概念问题!晕!求教! 关于Oracle提供接口的问题 小弟刚接触ORACLE,求帮助 ora-01422错误
工具--->文本导入器如果文本内容不大也可以
select * from XXX for update
然后复制-粘贴
INFILE 'D:\csvdata.csv' /*导入文件的文件名,就是你的csv文件名和路径*/
TRUNCATE /*导入的方式,TRUNCATE方式就是把原表原有数据删了再导入,还有别的方式你可以网上找找*/
INTO TABLE YOUR_TABLE /*导入的表名称*/
FIELDS TERMINATED "," /*使用的数据分隔符,你的csv是逗号分隔符就用逗号*/
TRAILING NULLCOLS /*允许字段为空值,这个必须有*/
( /*以下这些是导入数据的字段名称*/
name CHAR,
age CHAR,
TRUNCATE_DATE SYSDATE,/*可以多插入一行变量数据,例如系统时间*/
TRUNCATE_STUS "0" /*也可以多插入一行常量数据*/
)之后你把这个ctl文件放在一个文件夹里比如D:\Load\ctl\csvinsert.ctl之后是sqlldr命令,你可以做成一个bat批处理文件保存就不用以后一直写了,格式如下:sqlldr username/password@orcl direct = true readsize = 10485760 bindsize = 2560000 rows = 50000 control="D:\Load\ctl\csvinsert.ctl" log="D:\Load\log\csvinsert.log bad=D:\Load\bad\csvinsert.bad"其中direct = true貌似是和oracle的compress数据压缩配合使用的,readsize = 10485760 bindsize = 2560000 rows = 50000是指定导入的时候一次跳多少记录,参数是我随便设的你可以研究下怎么设最好,后面的log会记录日志,bad问价会记录没有导入成功的数据,默认50条写满就直接停止导入了,可以通过参数设置其大小,你可以从网上找找。