SQL SERVER 定时更新 EXCEL 文档
我遇到的困难是:
1. 尝试制作SSIS直接向其中插入新的数据。结果是旧的数据不覆盖,无限叠加。
2. 使用Openrowset直接操作excel。但是excel文件本身不支持delete和truncate操作。如果是单调递增的数据库还好,做一下except检查和update更新就好。如果是大幅度波动的文件,会产生大量过期数据。
3. 尝试使用update为null值。结果发现excel不会自动把null值作为空行处理。但是如果你把所有行全部update成空,再打开excel文件,选中一下A1 保存关闭,excel里的table就干净了。非常诡异
请各位老哥指点,我该怎么完成我的需求,也就是定期完美更新excel里的一个工作表。
(步骤为,清空这个表内的数据,保留所有column,导入全新的数据,数据格式不发生改变)
如果真的要删除这个文件也行 但是生成的excel文件名为B,表格名为Sheet3,这个不能发生改变。
我觉的这个需求大家是不是还挺经常遇到的?大家是怎么处理呢?
不考虑使用java或者.net语言进行操作,尽量仅使用sqlserver。如果需要使用powershell请上详细步骤,这个东西用的太少。
非常感谢
附:
这是我现在使用的语句,请参考路径于数据库名,表名。驱动使用ACE12.0 工作环境不支持JET4.0(发生不可预期的错误)
insert into OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\Users\fu\Desktop\B.xlsx',sheet3$)
select * from expire_pool
except
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\Users\fu\Desktop\B.xlsx','select * from [sheet3$]')
go
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\Users\fu\Desktop\B.xlsx','select * from [Sheet3$]')
--我没有继续往下写,实际上,上方可以加入update语句,以studentid作为主键,进行其他栏目的更新检查,这个没有问题
相关推荐
XlsToSql(Excel转Sql工具)
**报表制作**:对于定期更新的报表,可以预先将Excel数据定时导入数据库,便于快速生成报表。4. **项目协作**:团队成员可以各自在Excel中编辑数据,然后统一导入数据库,提高协同工作的效率。
POWER BI:关于ssas模型更新
准备工作:环境搭建 服务器:1.SqlServer2017(sqlserver,ssas):注意添加多个管理员用户 2.Power BI DeskTop-rs/Server:默认安装 3.ODAC64 4.SSMS 5.最好office,wps亦可 本 地:1.Visual Studio 2017:只选择SSDT功能 2.SSDT2017:默认安装 3.ODTwithODAC1120320_32...
Python连接SQL Server实时读取数据[可运行源码]
本文档详细阐述了利用Python语言连接到SQL Server数据库并进行实时数据读取的方法。首先,文档指导读者安装并使用pyodbc库,该库允许Python程序与SQL Server进行交互。
EXCEL-data-import-and-export.rar_excel sql
**VBA和宏**:对于高级用户,可以使用Excel的VBA(Visual Basic for Applications)编写宏来自动化导入和导出过程,例如定时自动更新Excel表格中的数据库数据。
Visual Basic+SQL Server
例如,ADO(ActiveX Data Objects)控件用于数据库操作,Timer控件用于定时触发事件,OLE控件可以嵌入其他应用程序的对象,如Excel或Word文档。


应用实例

