如何把Excel表中数据导入数据库

如何把Excel表中数据导入数据库,第1张

1、直接用Sql语句查询

2、先用excle中的数据生成xml文件,再把xml导入数据库

第一种方法(方法二以后再试),找到联机丛书里实现此功能的Sql语句如下:

SELECT

FROMOpenDataSource('MicrosoftJetOLEDB40',

'DataSource="c:Financeaccountxls";UserID=Admin;Password=;Extendedproperties=Excel50')xactions

语句是有了,但我还是试了很久,因为各个参数具体该怎么设置它没有说。Data

Source就是excel文件的路径,这个简单;UserId、Password和Extended

properties这三个属性我改成了各种各样的与本机有关的用户名、密码以及excel版本都不对,最后用上面例子里的值“User

ID=Admin;Password=;Extended

properties=Excel

50”才成功了,晕啊;最后个“xactions”更是查了很多资料,其实就仅仅是excel文件里所选的工作表名而已,怪我对excel不够熟悉了,另外注意默认的Sheet1要写成[Sheet1$]

最后,看看我成功的测试

数据库里建好一个表testTable_1,有5个字段id,

name,

date,

money,

content,C盘下book1xls文件的sheet1工作表里写好对应的数据并设好数据类型,执行如下插入语句:

insertintotestTable_1([name],[date],[money],[content])

Select[姓名],[日期],[金额],[内容]

FROMOpenDataSource('MicrosoftJetOLEDB40',

'DataSource="C:Book1xls";

UserID=Admin;Password=;Extendedproperties=Excel50')[Sheet1$]

select里的列名我一开始用代替,但发现输出顺序与我预期的不同,是“金额、内容、日期、姓名”,不知道具体有什么规律,就老老实实写名字了。 *** 作成功

回过头来看看市场部的要求,假设在我这张表里实现,可以先判断如excel里存在与记录相同的name字段(name要唯一非空)时就删除记录,之后再插入,这样简单,但自增的id字段会因为插入而改变,那是不行的了。可行的方法是先读出excel里全部记录,然后用游标一条条分析,如果存在这个name就更新否则就插入。OK,下次就不用让他们再对着文档一条条Update了

1)打开你的sql server,找到要导入数据的数据库,右键——〉任务——〉导入数据

2)按照图示选择要导入的excel

3)选择导入到哪个数据库

4)导入excel选择第一项即可,选择第二项是表与表直接内容的筛选复制

5)选择源表和源视图

6)编辑映射页面

7)继续下一步,点击完成,看到传输数据完成页面

8)进入数据库刷新,查看刚刚导入的表,完成!

首先我们肯定有一个excel的文件,文件中有大量的数据,每一列代表着不同的字段。

我们首先建立一个数据库,然后在库中建立表,表的每个字段对应excel中的每一列。

一、假如excel中有四列数据,希望导入到数据库中

mytable

中,对应的字段分别为field1,field2,field3,field4

二、在excel表格中增加一列(excel应该是e列),利用excel的公式自动生成sql语句(这个很重要,别写错了),具体方法

如下:

1、增加一列(excel应该是e列,因为我们原有4列数据,分别为a\b\c\d列)

2、在第一行(这一行必须为有效数据行否则出错)的e列,就是e1中输入公式=concatenate("insert

into

table

(field1,field2,field3,field4)

values

('",a1,"','",b1,"','",c1,"','",d1,"');")

3、此时e1已经生成如下的sql语句:

insert

into

mytable

(field1,field2,field3、field4)

values

('a1中

的数据','b1','c1','d1');

4、将e1的公式复制到所有行的e列,(就是用鼠标点住e1单元格的右下角,一直拖拽下去,到最后一行数据)

5、此时e列已经生成了所有的sql语句

6、选中e列把e列数据复制到一个纯文本文件中,命名为

例如:exceltxt

三、把exceltxt

放到数据库中运行即可,可通过命令行导入

source

f:\exceltxt

、打企业管理器打要导入数据数据库表按右键所任务--导入数据dDTS导入/导向导按

2、选择数据源

Microsoft

Excel

97-2000文件名

选择要导入xls文件按

3、选择目

用于SQL

Server

Microsoft

OLE

DB提供程序服务器选择本(本数据库

VVV)使用

SQL

Server身份验证用户名sa密码空数据库选择要导入数据数据库(

client)按

4、选择

用条查询指定要传输数据按

5、按

查询器源表列表要导入xls文件列各列加入右边

选列

列表步定要注意加入列顺序定要与数据库字段定义顺序相同否则错按

6、选择要数据进行排列顺序步选择列查询语句

order

by

面所跟列按

7、要全部导入则选择

全部行按

8、则看根据前面 *** 作查询语句确认误按

9、看

表/工作表/Excel命名区域

列表

列选择要导入数据表按

10、选择

立即运行按

11、看整 *** 作摘要按

以上就是关于如何把Excel表中数据导入数据库全部的内容,包括:如何把Excel表中数据导入数据库、如何将excel中的数据导入到数据库、如何将excel表导入数据库的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9718283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存