--命令行方法
導出爲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
*/