如何将excel数据导入oracle中
有一个比较麻烦但保证成功的方法。 1、在本地创建一个Access数据库,将Excel数据先导入到Access.可直接导入点击鼠标右键,选择导入,文件类型选择要导入的Excel文件,也可通过创建宏用TransferSpreadsheet函数实现。 2、在本地创建ODBC,链接oracle数据库。将oracle中需要导入数据的表以链接表的方式在本地Access中创建(千万不要使用导入表)。 3、在Access数据库中创建插入查询将导入好的Excel数据导入到oracle中。
利用SQL*Loader将 Excel 数据导出到 Oracle 数据库中
系统环境:
1、操作系统:Windows 2000 Server,机器内存128M
2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版
3、安装路径:C:\ORACLE实现步骤:
1、打开MicroSoft Excel 20002、文件(F)→新建(N)→工作簿→3、输入以下数据,存盘为test.xls文件(F)→另存为(A)→ 保存类型为:制表符分隔,起名为text.txt,保存到C:\
5、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager 创建表结构
SQL> create table test
(
id number, --序号
username varchar2(10), --用户名
password varchar2(10), --密码
sj varchar2(20) --建立日期
);6、创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑:
控制文件:input.ctl,内容如下: load data --1、控制文件标识
infile 'test.txt' --2、要输入的数据文件名为test.txt
append into table test --3、向表test中追加记录
fields terminated by X'09' --4、字段终止于X'09',是一个制表符(TAB)
(id,username,password,sj) -----定义列对应顺序a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录,替换成新装载的记录
d、truncate,同上7、在DOS窗口下使用SQL*Loader命令实现数据的输入C:\>sqlldr userid=system/manager control=input.ctl 默认日志文件名为:input.log
默认坏记录文件为:input.bad8、连接到SQL*Plus中,查看是否成功输入1、打开MicroSoft Access 20002、文件(F)→新建(N)→数据库→起名为test.mdb→创建3、用鼠标左键单击“使用设计器创建表”,输入以下字段,
字段A5设置成主键,存盘为test表,
注:Oracle中,所有对象的名称都是以大写字母保存的,
所以,如果Access的字段中含有小写字母,会出现错误
如果表名为小写字母,则可以成功导入。
4、在test表中输入一些记录
5、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager 创建新的用户:如user1/pass1,赋予connect,resource权限。
SQL> grant connect,resource to user1 identified by pass1; Oracle数据库的实例名,本例:oradb
Oracle用户名,本例:user1
确认Oracle实例、TNSListener服务都已启动成功6、配置ODBC:开始→设置→控制面板→管理工具→数据源(ODBC)→
添加一个系统DSN:
数据源名称(自己设,好记就行如:aaa)
服务名称(Oracle主机字符串:oradb)
用户名称(Oracle用户名:如user1) tnsnames.ora文件中
ORADB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.1.1.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oradb)
)
)7、导出记录
在test表上单击鼠标右键→导出→保存类型为ODBC databases()→
输入目标表的名称→
(可以使用默认的相同表名,但要注意改成大写,否则在Oracle中操作此表时,需要用双引号括起表名)
选择ODBC源(aaa)→确定→
输入user1用户的密码(pass1)→OK→
8、连接到SQL*Plus中
有一个比较麻烦但保证成功的方法。 1、在本地创建一个Access数据库,将Excel数据先导入到Access.可直接导入点击鼠标右键,选择导入,文件类型选择要导入的Excel文件,也可通过创建宏用TransferSpreadsheet函数实现。 2、在本地创建ODBC,链接oracle数据库。将oracle中需要导入数据的表以链接表的方式在本地Access中创建(千万不要使用导入表)。 3、在Access数据库中创建插入查询将导入好的Excel数据导入到oracle中。
利用SQL*Loader将 Excel 数据导出到 Oracle 数据库中
系统环境:
1、操作系统:Windows 2000 Server,机器内存128M
2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版
3、安装路径:C:\ORACLE实现步骤:
1、打开MicroSoft Excel 20002、文件(F)→新建(N)→工作簿→3、输入以下数据,存盘为test.xls文件(F)→另存为(A)→ 保存类型为:制表符分隔,起名为text.txt,保存到C:\
5、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager 创建表结构
SQL> create table test
(
id number, --序号
username varchar2(10), --用户名
password varchar2(10), --密码
sj varchar2(20) --建立日期
);6、创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑:
控制文件:input.ctl,内容如下: load data --1、控制文件标识
infile 'test.txt' --2、要输入的数据文件名为test.txt
append into table test --3、向表test中追加记录
fields terminated by X'09' --4、字段终止于X'09',是一个制表符(TAB)
(id,username,password,sj) -----定义列对应顺序a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录,替换成新装载的记录
d、truncate,同上7、在DOS窗口下使用SQL*Loader命令实现数据的输入C:\>sqlldr userid=system/manager control=input.ctl 默认日志文件名为:input.log
默认坏记录文件为:input.bad8、连接到SQL*Plus中,查看是否成功输入1、打开MicroSoft Access 20002、文件(F)→新建(N)→数据库→起名为test.mdb→创建3、用鼠标左键单击“使用设计器创建表”,输入以下字段,
字段A5设置成主键,存盘为test表,
注:Oracle中,所有对象的名称都是以大写字母保存的,
所以,如果Access的字段中含有小写字母,会出现错误
如果表名为小写字母,则可以成功导入。
4、在test表中输入一些记录
5、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager 创建新的用户:如user1/pass1,赋予connect,resource权限。
SQL> grant connect,resource to user1 identified by pass1; Oracle数据库的实例名,本例:oradb
Oracle用户名,本例:user1
确认Oracle实例、TNSListener服务都已启动成功6、配置ODBC:开始→设置→控制面板→管理工具→数据源(ODBC)→
添加一个系统DSN:
数据源名称(自己设,好记就行如:aaa)
服务名称(Oracle主机字符串:oradb)
用户名称(Oracle用户名:如user1) tnsnames.ora文件中
ORADB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.1.1.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oradb)
)
)7、导出记录
在test表上单击鼠标右键→导出→保存类型为ODBC databases()→
输入目标表的名称→
(可以使用默认的相同表名,但要注意改成大写,否则在Oracle中操作此表时,需要用双引号括起表名)
选择ODBC源(aaa)→确定→
输入user1用户的密码(pass1)→OK→
8、连接到SQL*Plus中
不入sqlserver简单啊.
如果数据量过大,可以使用sqlserver的dts,那个比较优顺手
也就是首先了解一下访问机制,客户端,服务器,这些概念
至于数据库本身的一些概念对实现感性认识来说与sqlserver没有太大区别
当你知道了本地访问,远程访问,监听,本地服务,这些概念后,便可以找几本入门的书去看了
再后面就自己研究去吧
试试看。
http://www.eygle.com/faq/How.To.Transfer.Data.Between.Excel.and.Oracle.htm
EYGEL大师的方法可以借鉴下~