sqlserver2000 下导出Excel数据

来源:互联网 发布:资本主义灭亡 知乎 编辑:程序博客网 时间:2024/05/20 01:13


--命令行方法

导出为Excel

EXEC master..xp_cmdshell 'bcp system_manager.dbo.family_code out c:\temp1.xls -c -q - 
S"GNETDATA/GNETDATA" -U"sa" -P""'

--该方法导出的Excel是文本文件,不是真正的Excel,因此打开时,office会提示扩展名与格式不兼容,但是不影响正常显示。

--不支持select之类的查询结果导出

--命令行导入数据的方法未测试,这里就不写了


--使用OpenDataSource

--从外部Excel读取记录,要求excel文件已存在,而且字段列名一致

SELECT id, name FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','
Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...sheet1$
 
向外部Excel插入记录,要求excel文件已存在,而且字段列名一致
insert into OpenDataSource('Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0'
)...sheet1$(code_id, code_type, code_info) 
select code_id, code_type, code_info from bjgl_code_base


--使用OPENROWSET
select code_id, code_type, code_info  from  OPENROWSET('MICROSOFT.JET.OLEDB.4.0'  ,
'Excel 5.0;DATABASE=c:\test.xls',sheet1$)


--向外部excel数据时,会把字段的顺序搞错
insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0'  ,
'Excel 5.0;DATABASE=c:\test.xls',sheet1$) select code_id, code_type, code_info from bjgl_code_base
--实际上插入顺序为 code_id, code_info, code_type
*/


0 0
原创粉丝点击