开发环境:
操作系统:Windows7
数据库:SQL Server2005 develop版本
(使用Express版本的SQL Server2005似乎不能导入,用Data Import for Sql Server也是显示SQL SERVER拒绝访问或不存在)
Office:Office2007
当然,我们可以利用Data Import for Sql Server等工具来导入,也可以利用SQL Server2005的DTS导入(在SQL Server Management Studio的选择你要导入到的数据库如:mydb,右键选择“任务”——“导入数据源”即可),这些工具都比较方便,下面介绍用T-Sql语句来导入Office2007的Excel表格。
首先要在“SQL Server2005的外围应用配置器”中选择“功能的外围应用配置器”勾上“启用OPENROWSET和OPENDATASOURCE支持”
然后在“SQL Server Management Studio”中新建一个查询,在编辑器中输入:
use mydb --根据系统需要使用这几段批处理命令打开相应功能 EXEC sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXEC sp_configure 'Ad Hoc Distributed Queries', 1; GO RECONFIGURE; GO --以上为根据实际情况的可选命令 --开始插入表格 select * into newtable from OpenDataSource('Microsoft.Ace.OLEDB.12.0','Data Source="d:\test.xls";Extended properties="Excel 12.0;HDR=Yes"')...[test$] go
请注意代码中的Office2007的数据库驱动为“Microsoft.Ace.OLEDB.12.0”,如果是Office2003的话应改成“Microsoft.Jet.OLEDB.4.0”,还有Office2007中Excel的“Extended properties”中为“Excel 12.0”而Office2003为“Excel 8.0”,代码最后面为表名,格式为:[XXX$]或者XXX$,不需要中括号也行,而且表名不能以数字开头(其实这是几乎所有编程语言的变量命名规则),切记!