如何在ASP.NET中批量插入CSV文件 [英] How to bulk insert CSV file in ASP.NET

查看:60
本文介绍了如何在ASP.NET中批量插入CSV文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用下面的代码将csv文件批量插入sql数据库(带有vb.net的asp.net),但它给了我这个错误('C:'附近的语法不正确。)

 使用 con1 作为  SqlConnection(ConfigurationManager.ConnectionStrings(  connection)。ConnectionString)
Dim csvPath As String = Server.MapPath ( 〜/ excel /)+ Path.GetFileName(FileUpload1.PostedFile.FileName)
FileUpload1.SaveAs(csvPath)
con1.Open()
Dim queryimg As 字符串 = BULK INSERT trycsv FROM + csvPath +
Dim cmdimg 作为 SqlCommand(queryimg,con1)
cmdimg.ExecuteNonQuery()
con1.Close()
结束 使用



请保存我的日期。

解决方案

尝试以下

 使用 con1 作为  SqlConnection(ConfigurationManager.ConnectionStrings(  connection)。ConnectionString) 
Dim csvPath As String = Path.C ombine(Server.MapPath( 〜/ excel /),Path.GetFileName(FileUpload1.PostedFile。 FileName))
FileUpload1.SaveAs(csvPath)
con1.Open()
Dim queryimg 作为 字符串 = BULK INSERT trycsv FROM' + csvPath + '
Dim cmdimg As SqlCommand(queryimg,con1)
cmdimg.ExecuteNonQuery()
con1.Close()
结束 使用



我已经包含文件路径的单引号

更新:

如下 Kornfeld Eliy ahu Peter 指出路径,如果你的web服务器和sql server都运行在同一个服务器/ PC上,那么上面的
将起作用

check 处理从CSV到SQL Server的数据插入 [ ^ ]

您可以找到可以使用csv阅读器批量插入的示例代码,这将解决您的问题。


尝试

处理从CSV到SQL Server的BULK数据插入 [ ^ ]

批量CSV到SQL服务器教程 - VB.NET和C#示例 [ ^ ]

使用SqlBulkCopy批量插入SQL Server [ ^

I want to bulk insert a csv file into sql database (asp.net with vb.net) with the code below but it gives me this error (Incorrect syntax near 'C:'.)

Using con1 As New  SqlConnection(ConfigurationManager.ConnectionStrings("connection").ConnectionString)
           Dim csvPath As String = Server.MapPath("~/excel/") + Path.GetFileName(FileUpload1.PostedFile.FileName)
           FileUpload1.SaveAs(csvPath)
           con1.Open()
           Dim queryimg As String = "BULK INSERT trycsv FROM " + csvPath + ""
           Dim cmdimg As New SqlCommand(queryimg, con1)
           cmdimg.ExecuteNonQuery()
           con1.Close()
       End Using


Please save my day.

解决方案

try below

Using con1 As New  SqlConnection(ConfigurationManager.ConnectionStrings("connection").ConnectionString)
           Dim csvPath As String = Path.Combine(Server.MapPath("~/excel/") , Path.GetFileName(FileUpload1.PostedFile.FileName))
           FileUpload1.SaveAs(csvPath)
           con1.Open()
           Dim queryimg As String = "BULK INSERT trycsv FROM '"+ csvPath + "'"
           Dim cmdimg As New SqlCommand(queryimg, con1)
           cmdimg.ExecuteNonQuery()
           con1.Close()
       End Using


I have include single quotes for file path
UPDATE:
As below Kornfeld Eliyahu Peter pointed out about path,
above will work if your web server and the sql server both run on same sever/PC
check
Handling BULK Data insert from CSV to SQL Server[^]
you can find sample code which you can bulk insert using csv reader and that will solve your issue.


Try
Handling BULK Data insert from CSV to SQL Server[^]
Bulk CSV to SQL server tutorial - VB.NET and C# sample[^]
Bulk Insert into SQL Server using SqlBulkCopy[^]


这篇关于如何在ASP.NET中批量插入CSV文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆