把Excel工作表中数据导入数据库
发布时间:2023-05-28 12:56:03
这是第二次了,市场部那边又来要求改数据。他们要改的是数据库某张表中类似商品价格等的数据,需要改的地方又多,我们上次是靠新来的兄弟一个个给Update进去的,这次老大去教了他们Update语句,把烦人的皮球踢给他们了。但这样一个个更新很明显不是办法,我想通过excel直接把数据导入数据库应该是可行的吧,就开始找方法了。
我想至少有这样两种比较容易实现的方法:
1、直接用Sql语句查询
2、先用excle中的数据生成xml文件,再把xml导入数据库
第一种方法(方法二以后再试),找到联机丛书里实现此功能的Sql语句如下:
SELECT* FROMOpenDataSource(’Microsoft.Jet.OLEDB.4.0′, ‘DataSource="c:Financeaccount.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0’)…xactions
语句是有了,但我还是试了很久,因为各个参数具体该怎么设置它没有说。Data Source就是excel文件的路径,这个简单;UserId、Password和Extended properties这三个属性我改成了各种各样的与本机有关的用户名、密码以及excel版本都不对,最后用上面例子里的值“User ID=Admin;Password=;Extended properties=Excel 5.0”才成功了,晕啊;最后个“xactions”更是查了很多资料,其实就仅仅是excel文件里所选的工作表名而已,怪我对excel不够熟悉了,另外注意默认的Sheet1要写成[Sheet1$]
最后,看看我成功的测试
数据库里建好一个表testTable_1,有5个字段id, name, date, money, content,C盘下book1.xls文件的sheet1工作表里写好对应的数据并设好数据类型,执行如下插入语句:
insertintotestTable_1([name],[date],[money],[content]) Select[姓名],[日期],[金额],[内容] FROMOpenDataSource(’Microsoft.Jet.OLEDB.4.0′, ‘DataSource="C:Book1.xls"; UserID=Admin;Password=;Extendedproperties=Excel5.0’)…[Sheet1$]
select里的列名我一开始用*代替,但发现输出顺序与我预期的不同,是“金额、内容、日期、姓名”,不知道具体有什么规律,就老老实实写名字了。操作成功
回过头来看看市场部的要求,假设在我这张表里实现,可以先判断如excel里存在与记录相同的name字段(name要唯一非空)时就删除记录,之后再插入,这样简单,但自增的id字段会因为插入而改变,那是不行的了。可行的方法是先读出excel里全部记录,然后用游标一条条分析,如果存在这个name就更新否则就插入。OK,下次就不用让他们再对着文档一条条Update了


猜你喜欢
- 电脑开启立体声混音,是在房间里发出连续的声音,即使声音关闭,房间也会有留有余音,带给用户极致的听觉体验。那电脑如何开启立体声混音呢?开启之后
- 怎么通过制表位搞定开头下划线?今天,小编来给大家分享下使用Word制作合同过程中好用的技巧。相信看完以后,你会有所收获。制表位搞定开头下划线
- Domino.exe是什么进程?Domino.exe进程可以删除吗?有些用户在使用Windows系统的过程中,发现任务管理器有一个名为Dom
- 重装Win10系统时开机反复蓝屏怎么解决?最近有不少用户在安装系统之后,重新开机遇到了这种问题,而我们可以通过电脑的安全模式进行系统排查,下
- 怎么申请成为酷我音乐人?酷我音乐是一款非常好用的音乐软件,里面囊括了很多好听的歌曲。现如今主播行业可以说是非常热门的,在酷我音乐电台中也有各
- Excel普通的表格只需要一个简单的函数sum就能完成求和,但是对于工作中单元格大小不一致,也就是不规则的单元格不能直接利用sum快速求和,
- 使用Mac的小伙伴有没有这样的烦恼,电脑一开机,一堆烦人的软件就自动开启了,让人很懊恼,如何才能彻底关掉开机自动开启的应用程序?mac开机启
- 如果采用高级筛选方式则可将筛选出的结果存放于其他位置,以便分析数据。在高级筛选方式下可以实现同时满足两个条件的筛选。仍以“主科目成绩表.xl
- WPS是一种常见的办公软件,很多朋友把wps表格中的某些单元格隐藏了起来,如果我们需要将它们显示,应该如何设置呢?下面就让小编告诉你wps表
- LOL是现在比较热门的游戏,因此有很多用户会去下载玩它,但是不少用户发现在玩LOL的时候会出现提示“您的游戏环境异常 请重启机器后再试”,那
- Mac里面的Finder其实就相当于 Windows 的资源管理器,当我们打开 Mac 首先见到的「笑脸」的图标就是它了,我们可以用它组织和
- 想提高办公效率吗?本期Word小编与大家分享5个可以让你工作效率翻倍,节省办公时间的技巧。1、自动保存点击文件——选项——保存——在“保存自
- 当我们使用安装了win10系统的惠普笔记本电脑出现系统故障,中毒等情况时,我们可以考虑给笔记本重装系统解决。那么惠普笔记本如何重装win10
- 你没看错,微软在 Windows 11 中彻底“解决”了蓝屏,解决的方法就是......微软正在 Windows 11 中将其著名的蓝屏死机
- VLOOKUP 是Excel中列查找公式。VLOOKUP共存在四个参数:VLOOKUP(lookup_value,table_array,c
- 用网易MuMu模拟器中“应用中心”使用方法?现在很多用户都喜欢把手游放到电脑上面玩,这样用户可以体验屏幕大和游戏玩起来更流畅的刺激感。下面就
- 第一,呈现excel左上角绿色三角首先,我们看看excel左上角绿色三角,就是像下面截图的模样。 第二,excel中左上角小三角出
- R1C1 引用方式此种引用方式,行和列都用数字表示,R 代表 Row(行),紧跟着行号;C 代表 Column(列),紧跟着列号。当行号或列
- 使用Excel经常需要处理各种票据、账本和结算凭证等,这时会不可避免地遇到处理金额的问题,。图1在单元格中显示大写金额提示在公式中使用RMB
- 微软此前的Vista操作系统的表现令人失望,而Windows 7肯定可以获得成功。由于XP仍然被大范围使用,因此操作系统市场存在着很大的需求