本文介绍了四种方法,实现将一个csv文件(文本以逗号分割)导入oracle数据库表。
1 复制、粘贴
将csv文件以excel打开,删除题头行,只保留数据,在第一列前面加空白列,列的顺序与表中字段顺序一致。
复制csv中所有数据单元格,包含空白列;
在plsql中执行select * from test for update;后锁定表,使用鼠标选中第一行,ctrl+v,实现将数据粘贴到表中。粘贴完成时间视数据量而定,数据较多,则时间稍久,且会消耗较大内存。可打开任务管理器,查看plsql进程占用的内存大小。
粘贴完成后,正常csv的每列数据正好对应在表的每个字段上,提交数据,解锁表。
此方案的适应场景:excel中待复制的数据,格式为文本格式(或由其他格式处理为文本格式,且数据值不变化),数据为abc等字母,或者汉字,或者金额。注:此处的金额是指数值,而非用户编号等以0开头的字符串。如果csv中含有以0开头的字符串,在excel打开后,excel会自动将其以科学计数法显示,此时复制粘贴,用户编号要么0丢失,要么表中得到的是科学计数法的字符串,此场景可用第2种方案(借助一个工具,OraLoader.exe)
2 OraLoader工具导入
此工具与plsql类似,但是功能大大简化,仅设计用于导入txt csv等文件到oracle中。
下载工具,运行,显示登录页面,点击取消,Options-Oracle Home