sql语句将excel数据导入到表

访问外部数据时,opendatasource的使用范例:

 

注意:sql2000默认是启用opendatasource功能的。但sql2005是默认不启用的。如果在sql2005中要使用opendatasource,则需要先开启。

      开启方式:

             方式一(手工修改sql配置):在sql2005的配置工具-》sql server外围应用配置器-》即席远程查询-》勾选"启用OpenRowset和OpenDatasource支持"选项。

             方式二(通过sql语句修改配置):

-- 允许配置高级选项

EXEC sp_configure 'show advanced options', 1

GO

-- 重新配置

RECONFIGURE

GO

-- 启用Ad Hoc Distributed Queries

EXEC sp_configure 'Ad Hoc Distributed Queries', 1

GO

--重新配置

RECONFIGURE

GO

 

--使用sql语句查询excel表单数据

select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0',

'Data Source=d:/log.xls;User ID=Admin;Password=;Extended properties=Excel 8.0')...[Sheet1$] 

 

/*

说明:

Microsoft.Jet.OLEDB.4.0:数据库提供程序,连接驱动

Data Source:excel的路径

User ID:excel用户名,默认为Admin

Password:密码。默认为空

Extended properties:excel版本

[Sheet1$]:Sheet1表单名称

*/

 

--将查询结果插入其他表中(注意字段个数必须一致,并且一一对应)

insert into 表名(字段1,字段2,字段3,字段4) 

select 人员,时间,内容,结果 from OpenDataSource('Microsoft.Jet.OLEDB.4.0',

'Data Source=d:/log.xls;User ID=Admin;Password=;Extended properties=Excel 8.0')...[Sheet1$] 

posted @ 2011-04-23 15:59  javawebsoa  Views(384)  Comments(0Edit  收藏  举报