怎么将Excel的数据导入数据库? 请求高手! 怎么将Excel的数据导入数据库? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有图像界面没 直接复制黏贴啊 plsql developder也可以 用工具PL/SQLDEV 1、把Excel另存为CSV文件2、打开PL/SQLDEV3、工具->文本导入器4、打开CSV文件,选择对应表,以及CSV各列对应表中的字段5、点击“导入”6、OK!! 如此说来,使用toad不也一样么?建议使用自己写的工具来做。不然你会后悔的。 使用sql loader 很简单的先将excel中的数据导成csv格式建一个ctl文件 再建一个bat文件写上几行代码就搞定了 最快捷的方式就是用plsql developder 复制粘贴。在查询的窗体中输入 select * from tbname for update,然后点edit data 按钮。再粘贴。最后提交数据库。 能说一下“把Excel另存为CSV文件”的具体步骤吗?这块有点不会操作谢了 /*方法一:使用SqlLoader1、MicroSoft Excel文件(F)→另存为(A)→ 保存类型为:制表符分隔,起名为text.txt,保存到C:\2、连入SQL*Plus 以system/manager用户登录, SQL> conn system/manager 创建表结构 SQL> create table test ( id number, --序号 username varchar2(10), --用户名 password varchar2(10), --密码 sj varchar2(20) --建立日期 );3、创建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,同上4、在DOS窗口下使用SQL*Loader命令实现数据的输入C:\>sqlldr userid=system/manager control=input.ctl 默认日志文件名为:input.log 默认坏记录文件为:input.bad5、连接到SQL*Plus中,查看是否成功输入方法二:使用PL/Sql1、打开MicroSoft Excel文件(F);2、使用PL/Sql连上相应数据库,执行select * from DESTTABLE for update取消锁定3、选中Excel中要导入的数据区域,保证列的顺序和数据库字段顺序一致,ctrl+c;4、选中PL/Sql中 DESTTABLE的要导入的列,ctrl+v;5、执行post changes(小绿钩),然后commit。方法三:使用Toad没有装工具,还没试方法四:使用odbc+pb用不同的odbc驱动程序连接不通的数据库然后在pb环境中启动数据管道,利用数据管道传输数据缺点:数据量大的时候,容易发生回滚段的问题,因为其无法指定专用的回滚段也没试过方法五:使用sqlserver 的dts做一个DTS连接把EXCEL与ORACLE 对应 的连接起来就可以直接运行导入数据了也没试过方法六:使用excel生成脚本比如excel文件中有id, name两列(分别为A列和B列), 要导入的表为person(person_id, person_name)1、在excel 文件的sheet的最右列, 添加一列, 对应第一行数据的单元格写入以下内容:= "INSERT INTO PERSON(PERSON_ID, PERSON_NAME) VALUES('" & A1 & "', '" & B1 & "');"2、然后把这一行复制到所有数据行对应的列中.3、这一列的内容拷贝出去保存, 即成为可以直接在sql*plus下运行的脚本.方法七:使用Ultra Edit等生成脚本用列编辑功能加上insert into ....等等方法八:使用VBA生成脚本在Excel里加个按钮,编个宏觉得还不如方法六简便,对用户也不够友好。*/ 上面的方法都可以,但最快的方法为plsql developer的粘贴保存方法如ks_reny所说,但要求数据格式规范,建议导入后,用一些方式进行验证 求oracle9i创建序列完整内容 SQL语句中,数值项目欧洲表示方法 分区表查询和union all联合查询效率比较 谁来帮我看看用C++封装的SQL语句啊? 如何将html表格快速导入数据库,几百万条数据,且分散在几千个文件中? sql的简单问题 求对日文进行全角半角统一排序的语句 oracle9i在win2003上安装的问题 图片存取问题 请各位帮忙指点:如何判断一个给定数据库是属于那一类型的数据库 oracle查询效率:一次查询100万条记录 VS 100万次查询,每次查一条记录 请问sql查询中 那些数值类型的值需要加引号 哪些不用?
plsql developder也可以
1、把Excel另存为CSV文件
2、打开PL/SQLDEV
3、工具->文本导入器
4、打开CSV文件,选择对应表,以及CSV各列对应表中的字段
5、点击“导入”
6、OK!!
先将excel中的数据导成csv格式
建一个ctl文件 再建一个bat文件
写上几行代码就搞定了
在查询的窗体中输入 select * from tbname for update,然后点edit data 按钮。再粘贴。最后提交数据库。
能说一下“把Excel另存为CSV文件”的具体步骤吗?
这块有点不会操作
谢了
/*
方法一:使用SqlLoader
1、MicroSoft Excel文件(F)→另存为(A)→ 保存类型为:制表符分隔,起名为text.txt,保存到C:\2、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager 创建表结构
SQL> create table test
(
id number, --序号
username varchar2(10), --用户名
password varchar2(10), --密码
sj varchar2(20) --建立日期
);3、创建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,同上4、在DOS窗口下使用SQL*Loader命令实现数据的输入C:\>sqlldr userid=system/manager control=input.ctl
默认日志文件名为:input.log
默认坏记录文件为:input.bad5、连接到SQL*Plus中,查看是否成功输入方法二:使用PL/Sql
1、打开MicroSoft Excel文件(F);2、使用PL/Sql连上相应数据库,执行
select * from DESTTABLE for update取消锁定3、选中Excel中要导入的数据区域,保证列的顺序和数据库字段顺序一致,ctrl+c;4、选中PL/Sql中 DESTTABLE的要导入的列,ctrl+v;5、执行post changes(小绿钩),然后commit。方法三:使用Toad
没有装工具,还没试方法四:使用odbc+pb
用不同的odbc驱动程序连接不通的数据库
然后在pb环境中启动数据管道,利用数据管道传输数据
缺点:数据量大的时候,容易发生回滚段的问题,因为其无法指定专用的回滚段
也没试过方法五:使用sqlserver 的dts
做一个DTS连接把EXCEL与ORACLE 对应 的连接起来就可以直接运行导入数据了
也没试过方法六:使用excel生成脚本
比如excel文件中有id, name两列(分别为A列和B列), 要导入的表为person(person_id, person_name)1、在excel 文件的sheet的最右列, 添加一列, 对应第一行数据的单元格写入以下内容:= "INSERT INTO PERSON(PERSON_ID, PERSON_NAME) VALUES('" & A1 & "', '" & B1 & "');"2、然后把这一行复制到所有数据行对应的列中.3、这一列的内容拷贝出去保存, 即成为可以直接在sql*plus下运行的脚本.方法七:使用Ultra Edit等生成脚本
用列编辑功能加上insert into ....等等方法八:使用VBA生成脚本
在Excel里加个按钮,编个宏
觉得还不如方法六简便,对用户也不够友好。
*/