用VB写的一些代码把公司里的数据传送到香港主机,一天大约有4000行数据要传送,因为以前用的逐行传送的,在本地传送速度还能接受,但是香港主机就慢得很了。
最近ChatGpt火的很,在上面问一下,他给我一代码,发现真的非常快了。分享给大家
以下是将DataGridView1的数据批量传输到SQL Server的VB.NET代码示例:
Imports System.Data.Common
Dim connectionString As String = "Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=True"
Dim dataTable As New DataTable()
For Each column As DataGridViewColumn In DataGridView1.Columns
dataTable.Columns.Add(column.Name, Type.GetType("System.String"))
Next
For Each row As DataGridViewRow In DataGridView1.Rows
Dim dataRow As DataRow = dataTable.NewRow()
For Each cell As DataGridViewCell In row.Cells
dataRow(cell.ColumnIndex) = cell.Value
Next
dataTable.Rows.Add(dataRow)
Next
Using connection As New SqlConnection(connectionString)
connection.Open()
Using bulkCopy As New SqlBulkCopy(connection)
bulkCopy.DestinationTableName = "myTable"
For Each mapping As DataColumnMapping In bulkCopy.ColumnMappings
mapping.SourceColumn = mapping.DataSetColumn.Clone
Next
bulkCopy.WriteToServer(dataTable)
End Using
End Using
请确保替换connectionString变量与数据库服务器地址,数据库名称和凭据。还要替换myTable为目标表名。