mysql sqlserver firstrow=2_将CSV文件导入SQLServer
基于SQL Server的CSV導入1)CSV文件數據可能具有,(逗號)中間(Ex:Description),那么如何使導入處理這些數據?
解
如果你用,(逗號)作為分隔符,就無法區分數據中的逗號作為字段終止符和逗號。我會用不同的FIELDTERMINATOR喜歡||..代碼看起來很像,這將完美地處理逗號和單個斜杠。2)如果客戶端從excel創建CSV,那么包含逗號的數據包含在" ... "(雙引號)(如下例所示)那么導入如何處理這個問題呢?
解
如果使用BULK INSERT,則無法處理雙引號,數據將用雙引號插入到行中。將數據插入表后,可以將這些雙引號替換為‘'.update?tableset?columnhavingdoublequotes?=?replace(columnhavingdoublequotes,'"','')3)如何跟蹤某些行是否有錯誤的數據,哪些導入跳過?(導入是否跳過不可輸入的行)?
解
若要處理由于數據或格式無效而未加載到表中的行,可以使用ERRORFILE性質,指定錯誤文件名,它將有錯誤的行寫入錯誤文件。代碼應該看起來像。BULK?INSERT?SchoolsTemp????FROM?'C:\CSVData\Schools.csv'
WITH
(
FIRSTROW?=?2,
FIELDTERMINATOR?=?',',??--CSV?field?delimiter
ROWTERMINATOR?=?'\n',???--Use?to?shift?the?control?to?next?row
ERRORFILE?=?'C:\CSVDATA\SchoolsErrorRows.csv',
TABLOCK????)
總結
以上是生活随笔為你收集整理的mysql sqlserver firstrow=2_将CSV文件导入SQLServer的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu安装python_Linux
- 下一篇: arduinojson 转 string