0

请帮帮我。我目前正在将 DTS 2000 包迁移到 SQL 2005 版本。我有一个包,里面有一个 VB 脚本。此 VB 脚本的工作是从 AVAYA 服务器下载数据并更新一些模板。Post 它将选择 excel 模板中的特定单元格并更新更多模板并运行存储过程以进一步更新表格。

我知道这可以用 SSIS 脚本代替。但我知道 SQL Server 不再推荐办公端自动化。

那么什么是最好的解决方案。这是我从 SSIS 更新那些 excel 模板的严格要求。

4

1 回答 1

1

我在 dba.SE 上看到了这个问题,这似乎是一种有趣的方法。通过安装 ACE OLEDB 驱动程序,而不是完整的 Office 安装,您可以使用任何您熟悉的 DML(插入、更新、删除)语句来修改 Excel 中的值。我以前使用这种方法像表格一样查询 Excel,但从未想过尝试修改内容。

安装驱动程序后,您只需创建一个到 Excel 资源的 OLE DB 连接,然后使用执行 SQL 任务来启动您的更新。DOB将值添加到 Sheet1 上的单元格 D2的语法为

INSERT INTO [Sheet1$D2:D2] VALUES ('DOB') 

wordpress 文章中的其他示例

INSERT INTO [NameOfExcelSheet] VALUES('firsttextcol', 2, '4/11/2009');
-- [I assume First Column is char field, 2nd col is integer, 3rd is Date]

DELETE FROM [NameOfExcelSheet] Where secondintcol=2;

UPDATE [NameOfExcelSheet] SET secondintcol = 3 where firsttextcol = ‘firsttextcol’;

参考

于 2013-07-12T12:20:24.723 回答