Asp.net 使用vb.net过滤csv文件中的数据并将其存储在mysql数据库中
我是一名新实习生,不熟悉.net,我的任务是过滤csv文件中的数据并使用VB.net保存到Microsoft SQL Server,到目前为止,我还没有看到一个简单的答案,有人能帮我吗?……提前感谢你可以通过将csv直接导入SQL Server 如果您需要/想要使用.NET,您可以使用CSV阅读器来读取CSV文件。然后可以使用将其高效地导入数据库 以下是一篇关于它的文章: VB.NET:Asp.net 使用vb.net过滤csv文件中的数据并将其存储在mysql数据库中,asp.net,vb.net,sql-server-2008,Asp.net,Vb.net,Sql Server 2008,我是一名新实习生,不熟悉.net,我的任务是过滤csv文件中的数据并使用VB.net保存到Microsoft SQL Server,到目前为止,我还没有看到一个简单的答案,有人能帮我吗?……提前感谢你可以通过将csv直接导入SQL Server 如果您需要/想要使用.NET,您可以使用CSV阅读器来读取CSV文件。然后可以使用将其高效地导入数据库 以下是一篇关于它的文章: VB.NET: Using conn = New SqlConnection(connectionString)
Using conn = New SqlConnection(connectionString)
conn.Open()
Dim transaction As SqlTransaction = conn.BeginTransaction()
Try
Using file As New StreamReader(filename)
Dim csv As New CsvReader(file, True, "|"c) ' change to your separator '
Dim copy As New SqlBulkCopy(conn, SqlBulkCopyOptions.KeepIdentity, transaction)
copy.DestinationTableName = tablename
copy.WriteToServer(csv)
transaction.Commit()
End Using
Catch ex As Exception
transaction.Rollback()
End Try
End Using ' closes also the connection '
感谢Tim…,我是个新手,我的经理给了我一个大的csv文件,我应该通过逐行循环读取数据来选择一些列,然后将数据插入到Microsoft服务器中的另一个表中,我建议使用批量复制插入方法,但他坚持认为是用于导入而不是读取。。。。,@VincentMacharia:您还可以使用VB.NET
TextfieldParser
类来读取和解析csv文件。当然有很多方法可以做到这一点,我刚刚展示了使用SqlBulkCopy
的最有效的方法。另一种选择是在文件中的行上使用循环,并使用简单的SqlCommand
插入记录。非常感谢,我仍将使用SqlBulkCopy。它更好,我能理解它。谢谢。@ VincentMacharia:考虑一下。不客气:)