2012-12-13 63 views
0

我批量插入一個CSV文件到SQL服務器,但檢查結果後,我意識到從CSV文件中的問題。 CSV文件中名字列的內容用逗號分隔,因此被移入下一列引起多米諾骨牌效應(例如,假設列名是名字,數字和地址,第一個名字列有一個名字所謂的詹姆斯邦德。由於逗號,它被移動到數字逗號,因此數字列的假設數據也轉移到地址列。 有沒有人有任何想法,我怎麼能糾正這個SQL服務器。列溢出到另一列sql服務器和CSV文件

+0

可能重複/ OPENROWSET FormatFile終止器,用於CSV文件,(com馬)在數據](http://stackoverflow.com/questions/11506484/bulk-insert-openrowset-formatfile-terminator-for-csv-file-with-comma-in-th) – Pondlife

+0

Thanx Pondlife ...這就是正是我面臨的問題。但我怎樣才能繞過它來爲我的存儲過程工作,因爲我批量插入的excel文件來自其他地方,並有很多人我不能手動檢查並糾正它在Excel文件中。 –

+0

你有CSV文件或Excel電子表格嗎?沒有有效的列分隔符,任何程序都無法簡單地分割CSV數據。也許你可以編寫腳本,如果你知道每列中預期的數據類型,例如如果第2列總是一個整數,那麼Bond,James,2必須被拆分爲'Bond,James | 2',而不是'Bond | James | 2'。但是如果前兩欄的數據是Bond,James,Blofeld和Ernst,那麼你就有一個真正的問題。如果數據在Excel中,那麼它已經結構化,因此您可以使用SSIS或其他工具來獲取數據。 – Pondlife

回答

0

喜在記事本中打開的原始數據後,我的同事和我發現它有文字標識,因此我基本上只是使用的格式文件大容量插入。感謝名單球員的建議。[BULK INSERT的