首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SSIS 變數查詢導致檔案輸出欄位順序錯亂的解決方案

     編輯:關於SqlServer

使用變數儲存 SQL 查詢字串作為 OLE DB 來源時,輸出至平面檔的欄位順序可能與查詢 SELECT 清單不一致,導致檔案格式錯誤。本文提供簡單有效的修正方法。

問題現象

  • 直接在 OLE DB 來源輸入 SQL:輸出欄位順序正確。
  • 使用變數 @SqlQuery 參考查詢:輸出欄位順序亂序,且無法在平面檔目的地管理器中輕易調整順序。

根本原因

SSIS 在設計階段透過 OpenRowset 或 SQLCommand 取得中繼資料時,變數查詢無法正確解析欄位順序,導致內部緩衝區欄位排序與預期不符。

解決方案:使用「預覽」或「重新整理中繼資料」

  1. 在 OLE DB 來源編輯器中,切換到「資料行」頁籤。
  2. 點擊「預覽」按鈕,SSIS 會實際執行查詢並重新取得正確的欄位順序與資料型別。
  3. 或點擊「重新整理」中繼資料按鈕(部分版本需先暫時將變數改為實際 SQL 取得中繼資料,再改回變數)。

完成後,平面檔目的地的欄位順序即會與查詢一致,避免逐欄手動調整的繁瑣與風險。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved