簡體   English   中英

將 csv 導入 SQL Server 表

[英]Import csv into SQL Server table

很久以前,我是一名開發人員,后來擔任管理職位,但又回到了一個新角色,從事一些輕量級的開發工作。

我遇到的問題是我需要將一個.csv文件導入到 SQL Server 表中以進行進一步處理,但其中一列可能有一個“,”,這會破壞導入。

我知道每當我強制刪除“,”時它都會起作用,但需要能夠以編程方式執行此操作。 該文件來自外部源,因此不幸的是我無法更正源或在列周圍放置“”作為分隔符。

任何幫助或建議將不勝感激。

PS:請記住,我正在重新學習東西,所以你可能不得不“愚蠢”地提出任何建議。 ;)

史蒂夫

如果您使用 c#,您實際上可以做的是准確識別逗號的位置,例如,如果您有這樣的表:

Apple,Peach,Raspberry
Apple,Banana,grape
Tomato,Pe,ch,Raspberry

如果您可以看到通常有 3 列以逗號分隔,並且在第 3 列中 Peach 單詞中有一個額外的逗號,因此如果逗號始終出現在第二列,您可以計算每行的單詞數:

var contents = File.ReadAllText(filename).Split('\n');
//you can use linq
var csv = from line in contents select line.Split(',').ToArray();
var count = contents.Split(',').Length; 

//通常它總是計數 3,但是當它計數為 4 時,您可以在該列上使用 if 條件:

if(count > 3){

col2 = csv[1] + csv[2]

}

我的意思是這只是想法和快速答案,但取決於您的操作方式,您只需要找到該 CSV 的正確模式,以便您弄清楚如何解決!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM