Imports System.Data
Imports System.Data.SqlClient
Imports Microsoft.VisualBasic.FileIO
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click
''バルクコピー
' ちなみに[My.Settings.Sql_ConnectionString]は以下の文字列です
' Data Source=servername;Initial Catalog=pubs;User ID=username;Password=password;
Using bk As New SqlBulkCopy(My.Settings.Sql_ConnectionString)
''コピー先テーブル名を指定
bk.DestinationTableName = "jobs_copy"
''データテーブル
Using dt As New DataTable
Dim row As DataRow
''フィールド(列)を追加
dt.Columns.Add("job_id", Type.GetType("System.Int16"))
dt.Columns.Add("job_desc", Type.GetType("System.String"))
dt.Columns.Add("min_lvl", Type.GetType("System.Byte"))
dt.Columns.Add("max_lvl", Type.GetType("System.Byte"))
''カンマ区切りテキストを読み込み、データテーブルに追加
Dim parser As TextFieldParser
parser = My.Computer.FileSystem.OpenTextFieldParser( _
"C:\TEST\jobs.txt", ",")
While Not parser.EndOfData
row = dt.NewRow
row.ItemArray = parser.ReadFields
dt.Rows.Add(row)
End While
Call parser.Close()
''データテーブルをコピー先へ書き込み
bk.WriteToServer(dt)
End Using
End Using
MessageBox.Show("終了")
End Sub
End Class
|