MSSQL导入导出EXCEL
2010-12-29 16:31 ☆冷枫☆ 阅读(3394) 评论(0) 编辑 收藏 举报在sql2005中需要操作Excel导入导出数据,我们可以这样来处理。
1.导入数据:
/***
* 这种方式通过使用 OPENDATASOURCE 或 OPENROWSET 函数为特定目的导入数据。
*下列代码示例也能将 Excel Customers 工作表数据导入新的 SQL Server 表:
***/
SELECT * INTO NEWTABLE FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=d:/gbs.xls;Extended Properties=Excel 8.0')...[Sheet1$]
SELECT * INTO NEWTABLE FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=d:/gbs.xls', [Sheet1$])
SELECT * INTO NEWTABLE FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=d:/gbs.xls', 'SELECT * FROM [Sheet1$]')
* 这种方式通过使用 OPENDATASOURCE 或 OPENROWSET 函数为特定目的导入数据。
*下列代码示例也能将 Excel Customers 工作表数据导入新的 SQL Server 表:
***/
SELECT * INTO NEWTABLE FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=d:/gbs.xls;Extended Properties=Excel 8.0')...[Sheet1$]
SELECT * INTO NEWTABLE FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=d:/gbs.xls', [Sheet1$])
SELECT * INTO NEWTABLE FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=d:/gbs.xls', 'SELECT * FROM [Sheet1$]')
如果数据库中已经存在对应的表了,可以通过下面的方式来执行导入操作:
INSERT INTO 已存在表名 SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=d:/gbs.xls', 'SELECT * FROM [Sheet1$]')
'Excel 8.0;Database=d:/gbs.xls', 'SELECT * FROM [Sheet1$]')
2.导出数据
--将SQL SERVER中查询到的数据导成一个Excel文件
--====================================================
T-SQL代码:
EXEC master..xp_cmdshell 'bcp 库名.dbo.表名 out d:/Temp.xls -c -q -S"servername" -U"sa" -P""'
参数:S 是SQL服务器名;U是用户;P是密码
--T-SQL DEMO
EXEC master..xp_cmdshell 'bcp testDB.dbo.gbs out d:/Temp.xls -c -q -S"." -U"sa" -P"1qaz-pl,"'
--====================================================
--====================================================
T-SQL代码:
EXEC master..xp_cmdshell 'bcp 库名.dbo.表名 out d:/Temp.xls -c -q -S"servername" -U"sa" -P""'
参数:S 是SQL服务器名;U是用户;P是密码
--T-SQL DEMO
EXEC master..xp_cmdshell 'bcp testDB.dbo.gbs out d:/Temp.xls -c -q -S"." -U"sa" -P"1qaz-pl,"'
--====================================================
如果在执行导出的过程中,出现异常信息需要检查下面两点:1.是否已经关闭excel文件;2.确认外围应用配置器中的xp_cmdshell是否启用。
励志博客园--优秀的阅读、励志、交流学习平台。您的网上心灵家园!