2011-12-15 88 views
1

我有一個帶有2-25個字段的sql server 2008表。我必須讀這張表並創建一個固定長度的文本文件,它包含順序的832個字符。將sql服務器表導出爲固定長度的文本文件

在閱讀表格時,不同字段的長度是固定的。例如,患者姓名應該從pos 1開始,長度將是30個字符,接下來從位置32開始,需要顯示醫療記錄號碼,其長度是13個字符。

請幫我寫下這個查詢嗎?或者任何事情都可以通過ssis包來完成?

回答

0

你可以投你的字段爲char數據類型,然後使用該使用bcp queryout

例如,藉此查詢:

select convert(char(30), [patient-name]) 
    , convert(char(13), [medical record nr]) 
    , convert(char(10), value3) 
    , ... 
from myTable 

您可以在BCP語句如下使用

bcp "select convert(char(10), field1), convert(char(10), field2), convert(char(10), value1) from myDB..myTable" queryout c:\myfile.txt /SmyServer /T /c 

請注意,您需要完全限定表名

相關問題