2016-12-06 104 views
4

我有一個SSIS包,其提取使用SQL命令從一個數據庫中的數據,然後生成分隔的文本文件,該文件是1452kb數據大小差異

我運行SSMS和相同的查詢生成的文本文件這是1499kb

兩個數據給出了相同的行數,這可能是該文件的大小差異和方式背後的原因,解決這個

+0

你是否絕對肯定這些文件是完全一樣的?他們可能會返回相同數量的行,但數據可能不同。 – SQLChao

+2

也許一個文件是UTF-8,另一個不是?或者也許一個文件最後包含空行?或者在每一行的末尾增加空格?最後,也許它像一個不同的linebreak(一個文件中的char(10)和另一個文件中的char(13)+ char(10))一樣簡單?在一個體面的編輯器中打開這兩個文件並切換隱藏的字符 - 這應該有助於澄清問題 – Tyron78

+0

請提供一套可重複的步驟,以便我們確定差異。 – billinkc

回答

1

假設該文件包含相同的數據。有許多事情,可以使大小不同:

  • 編碼: 如果使用Unicode它可以存儲像The byte order mark (BOM)

  • 行分隔符額外的數據: 這真的只是哪些字節存儲在一個文件中。 CR是用於回車的字節碼(來自打字機的日子)和用於換行的LF。它只是指放置爲行尾標記的字節。 CRLF是兩個字符的組合。

  • 空行: 如果一個文件中包含的列報頭和另一個沒有

: 有時數據出口可以在文件的結尾

  • 頭添加空行

    希望它有幫助