一、还是先说一下环境(其他版本也差不多):
- 操作系统:Windows 10
- 数据库Oracle 11g r2
- PL/SQL Developer 12
二、csv文件
csv,全称为Comma-Separated Values,一般译为逗号分隔值,csv文件以纯文本的形式来存储表格数据。在windows系统上,如果你装了excel的话,csv的默认打开一般就会是excel,但前面说到,csv是以纯文本的形式来存储数据的,那我们尝试用文本编辑器来打开它,你就会发现,哦!原来是酱紫,看图。图一是office excel打开的,图2是记事本。
三、通过PL/SQL Developer导入
想起来,以前不知道可以整个文件导入,我们是直接用plsql查询表——解锁——复制粘贴进去——提交的方式去导入类似excel之类的数据。有一次公司搞了上百万行的数据过来......那酸爽!
好了,不废话了。我们就用上面那个学生信息的表格数据来导入一次。
1、准备
(1)首先,先修改好csv文件的表头部分,也就是第一行,修改为数据库对应的字段名,我上面那个是已经修正好的了。
(2)在数据库中建好一个跟表格数据对应的表,代码如下:
create table TMP_STUDENT
(
fgrade VARCHAR2(50),
fclass VARCHAR2(50),
fname VARCHAR2(50),
fsex VARCHAR2(2),
fborndt DATE
);
(3)然后,我们打开PL/SQL Developer的文本导入器,我这边就截个plsql 12的图,其他版本的随便找一下
(4)打开文本导入器之后我们点击左上角的打开图标,找到你要导入的csv文件,双击打开
(5)加载文件后效果如下,中间的配置我们勾选上标题名,就会自动把第一行作为表头,也就是字段名。然后我们点击选项卡的:到Oracle的数据来选择导入到数据库的哪张表中
(6)在到Oracle的数据选项卡中,选择导入表的用户和表名,如下图的LHY.TMP_STUDENT
选择好后用户名和表明后,界面中部的字段区域就会自动对应到表的字段,而且date格式的也会自动转为对应格式,同时,也可以自己选择对应导入的字段
确认后没问题的话就点左下角的导入按钮,即可完成导入。
emm...图中的每次提交数,导入大数据的可以适当调高一些。
(7)点击导入后(xxx条记录被导入,耗时0.00000001秒)
(8)查询一下确认下,木有问题