sqlserver 匯出資料到Excel

來源:互聯網
上載者:User

標籤:des   io   os   ar   使用   for   sp   檔案   資料   

1、匯出非正式Excel

EXEC master..xp_cmdshell ‘bcp t.dbo.tcad out D:\MySelf\output\Temp.xls -c -q -S"." -U"sa" -P"sql2008"‘
--參數:S 是SQL伺服器名;U是使用者;P是密碼

2、啟用/停用xp_cmdshell

-- To allow advanced options to be changed.
EXEC sp_configure ‘show advanced options‘, 1
GO
-- To update the currently configured value for advanced options.
RECONFIGURE
GO
-- To enable the feature.
EXEC sp_configure ‘xp_cmdshell‘, 1
GO
-- To update the currently configured value for this feature.
RECONFIGURE
GO

-- To Disable advanced options to be changed.
EXEC sp_configure ‘show advanced options‘, 0
GO
-- To update the currently configured value for advanced options.
RECONFIGURE
GO

EXEC sp_configure ‘xp_cmdshell‘, 0
GO
-- To update the currently configured value for this feature.
RECONFIGURE
GO

 

3、啟用/停用Ad Hoc Distributed Queries

--啟用Ad Hoc Distributed Queries的方法,執行下面的查詢語句就可以了: 
exec sp_configure ‘show advanced options‘,1
reconfigure
exec sp_configure ‘Ad Hoc Distributed Queries‘,1
reconfigure
--使用完畢後,一定要關閉它,因為這是一個安全隱患,執行下面的SQL語句用來關閉: 
exec sp_configure ‘Ad Hoc Distributed Queries‘,0
reconfigure
exec sp_configure ‘show advanced options‘,0
reconfigure

4、傳說中的匯出正式的Excel(實驗不成功)

/*--資料匯出EXCEL
匯出表中的資料到Excel,包含欄位名,檔案為真正的Excel檔案
,如果檔案不存在,將自動建立檔案
,如果表不存在,將自動建立表
基於通用性考慮,僅支援匯出標準資料類型
--鄒建 2003.10(引用請保留此資訊)--*/
/*--調用樣本
p_exporttb @tbname=‘地區資料‘,@path=‘c:\‘,@fname=‘aa.xls‘
--*/
--create proc p_exporttb
declare
@tbname varchar(100), --要匯出的表名
@path nvarchar(1000), --檔案存放目錄
@fname nvarchar(250), --檔案名稱,預設為表名
@err int,
@src nvarchar(255),
@desc nvarchar(255),
@out int,
@obj int,
@constr nvarchar(1000),
@sql varchar(8000),
@fdlist varchar(8000)
set @tbname=‘tcad‘
set @path=‘D:\MySelf\output\‘
set @fname=‘test‘
--參數檢測
if isnull(@fname,‘‘)=‘‘
set @[email protected]+‘.xls‘
--檢查檔案是否已經存在
if right(@path,1)<>‘\‘
set @[email protected]+‘\‘
--create table #tb(a bit,b bit,c bit)
set @[email protected][email protected]
--insert into #tb exec master..xp_fileexist @sql
--資料庫建立語句
set @[email protected][email protected]
--if exists(select 1 from #tb where a=1)
set @constr=‘DRIVER={Microsoft Excel Driver (*.xls)};DSN=‘‘‘‘;READONLY=FALSE‘
+‘;CREATE_DB="‘[email protected]+‘";DBQ=‘[email protected]
--else
--set @constr=‘Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties="Excel 8.0;HDR=YES‘
--+‘;DATABASE=‘[email protected]+‘"‘
exec @constr

繼續努力!!!

sqlserver 匯出資料到Excel

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.