使用 bcp 工具,支援查詢導出、格式檔、字元/Unicode 編碼等選項。
| 參數 | 說明 |
|---|---|
queryout | 以 T-SQL 查詢結果導出 |
-c | 字元模式,欄位分隔 \t,列分隔 \n |
-w | Unicode 模式,nchar 儲存 |
-t | 自訂欄位分隔符(預設 \t) |
-r | 自訂列分隔符(預設 \n) |
-S | 指定伺服器/實例 |
-U / -P | 登入帳號/密碼 |
-T | 信任連線(Windows 驗證) |
-C 65001 | 輸出 UTF-8(代碼頁 65001) |
bcp "SELECT * FROM dbo.Orders" queryout "F:\export.txt" -c -t"," -S 192.168.1.100 -U sa -P pwd123
LOAD DATA LOCAL INFILE 'F:/export.txt'
INTO TABLE orders
CHARACTER SET gbk
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES;
LOCAL:從客戶端讀取檔案;若省略則從伺服器端讀取。REPLACE / IGNORE:處理唯一鍵衝突策略。CHARACTER SET gbk:與匯出檔編碼一致,防止中文亂碼。SET col=expr:匯入同時衍生欄位(如 SET create_date=CURRENT_TIMESTAMP)。The used command is not allowed with this MySQL version啟動客戶端加參數:
mysql --local-infile=1 -u root -p -h 127.0.0.1
加入 -C 65001:
bcp "query" queryout "file.txt" -c -C65001 -S ...
bcp ... format nul -f fmt.fmt -c 產生格式檔,確保欄位對應正確。