具体的技术实现 Dos 环境下加载 1、首先,服务器端的侦听服务必须已经开启。 测试方法:Dos 下输入 C:\sqlplus username/password@serviceName 2、然后使用 Oracle 的 sqlldr 命令进行数据的导入前期条件1)Oracle 数据库端必须已经建好了需要导入的数据表的结构 2)一个数据源文件 下面例子中为制表符分隔的文本文件 model.txt ,为Excel 表中导出的 3)手工编辑一个XXX.CTL 的控制文件 4)命令行加载数据如下实例:以下文件缺省放到C:\ 下,如果不是,就需要指明全路径 1.命令控制文件 input.ctl 内容 控制文件中指定插入数据的方式关键字 insert,为缺省方式,在数据装载开始时要求表为空 append,在表中追加新记录 replace,删除旧记录,替换成新装载的记录 truncate,同上 在 Dos 窗口下使用 SQl*Loader 命令实现数据的导入 C:\sqlldr userid=system/manager@ serviceName control=input.ctl 默认日志文件名为:input.log 默认坏记录文件为:input.bad 使用其它数据库转移工具 以下以SQL Server 导入导出向导为例 1、在数据的导入导出向导中设置数据源服务器,实例中选择数据源选择SQL Server 2、然后指定要导入的Oracle 数据源 3、需要配置Oracle 的属性信息 需要注意的是,登录数据库的用户信息即为数据导入之后的方案名,即导入之后的SQL Server 中的表在Oracle 中标志名为 username.表名以下按照提示即可,可以完全导入SQl Server 中的数据表和视图,也可以使用查询语句返回你要选择的列或者行。
专注于为中小企业提供成都网站制作、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业连平免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
我知道的有三种方法:\x0d\x0a1、如果数据量不大且没有大对象(图片,文件什么的)且使用pl/sql developer做oracle管理工具的话,可以直接复制粘贴,操作方法是先按照列的先后顺序把EXCEL中数据排好,在第一个字段前面加一空白列(这部很重要,否则字段就会不对应了),pl/sql developer中执行下select * from 表名 for update,使得你的表可以编辑,然后点一下像锁一样的那个图标(鼠标放上去会显示编辑数据四个字),复制excel中的数据(包括空白列),最后直接在表中空白行的地方粘贴就行了,操作很简单。\x0d\x0a2、使用外部程序编程实现,如c#,java,以c#为例,先将excel解析成datatable,然后逐行遍历入库即可。\x0d\x0a3、使用工具XlsToOra.exe,只要配置一下登陆进去后,设置一下导入的表名,列与excel中列的对应关系就可以导入了。\x0d\x0a4、可以将excel转换成csv文件再利用文本导入器(工具-文本导入器)导入即可。\x0d\x0a以上是个人使用过的一些方法, 难免有不完美之处,欢迎指正探讨^_^
将文本文件导入Oracle中需要用sqlloader的方式。
1、在数据库中创建相应的表。
如,文本文件内容为:
1
2
3
4
create table test
(id int,
name varchar2(10),
sex varchar2(10));
2、在电脑中某路径下编写ctrl文件,以c盘data目录为例,添加如下文本。如,被导入的文件名为load.txt
1
2
3
4
5
6
load data
infile 'load.txt' --被导入文件名
replace into table test
(id char terminated by ',',
name char terminated by ',',
sex char terminated by whitespace)
编写后,将文件保存成load.ctrl
3、然后打开命令提示符,并进入到文本文件和ctrl文件所在目录。
4、输入以下语句,并执行。
1
sqlldr userid=用户名/密码@数据库实例名 control=load.ctl log=load.log
5、导入后,test表中数据如下: