|
再度ご返信いただき、ありがとうございます。
参考サイト、insertクエリの生成までいただき
ありがとうございます。
--------------------------------------------------------
■自己解決した時のコード
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click
Try
''ユーザーグリッドの初期設定有効
Call m_userControlClass.UserCtrlInitialize(Me)
'DBコネクション生成
Dim oleCon As New OleDb.OleDbConnection()
Dim oleDataAd As OleDb.OleDbDataAdapter
Dim dtSet As New DataSet()
Dim dtTable As New DataTable
Dim dr As DataRow = dtTable.NewRow
Dim dc = New DataColumn
Dim strSql As String
Dim dtime As DateTime = New DateTime
'接続文字列を作成
oleCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source= C:\高速DB\ライズ事業協同組合.mdb;" _
& "Persist Security Info=False"
'SQL文を作成
strSql = "Select KumiaiID,SeikyuName1,KumiaiPref,KumiaiCity,KumiaiPhone,KumiaiFax from kumiai"
'レコードを取得
oleDataAd = New OleDb.OleDbDataAdapter(strSql, oleCon)
oleDataAd.Fill(dtSet, "kumiai")
'データセットからテーブルを取得
dtTable = dtSet.Tables("kumiai")
'列の名前
dc.ColumnName = "totime"
' 初期値
dc.DefaultValue = String.Empty
' データ型
dc.DataType = Type.GetType("System.String")
' 列を追加
dtTable.Columns.Add(dc)
Dim iRowCount As Integer
'Dim iColCount As Integer
------------'追加コード1↓
Dim oleCona As New OleDb.OleDbConnection()
oleCona.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source= C:\高速DB\ライズ事業協同組合.mdb;" _
& "Persist Security Info=False"
'接続オープン
oleCona.Open()
Dim SQLCm As OleDb.OleDbCommand = oleCona.CreateCommand
-----------'追加コード終わり1↑
For iRowCount = 0 To dtTable.Rows.Count - 1
'For iColCount = 0 To dtTable.Columns.Count - 1
'Console.Write(dtTable.Rows(iRowCount)(iColCount) & ControlChars.Tab)
'Next
For Each row As DataRow In dtTable.Rows
row.Item("totime") = System.DateTime.Now
Console.WriteLine(row.Item("KumiaiID").ToString)
Console.WriteLine(row.Item("SeikyuName1").ToString)
Console.WriteLine(row.Item("KumiaiPref").ToString)
Console.WriteLine(row.Item("KumiaiCity").ToString)
Console.WriteLine(row.Item("KumiaiPhone").ToString)
Console.WriteLine(row.Item("KumiaiFax").ToString)
Console.WriteLine(row.Item("totime").ToString)
--------------------'追加コード2↓
SQLCm.CommandText = "insert into kumiai_login (KumiaiID,KumiaiName,KumiaiPref,KumiaiCity,KumiaiPhone,KumiaiFax,totime)" &
"values (
'" & (row.Item("KumiaiID")) & "',
'" & (row.Item("SeikyuName1")) & "',
'" & (row.Item("KumiaiPref")) & "',
'" & (row.Item("KumiaiCity")) & "',
'" & (row.Item("KumiaiPhone")) & "',
'" & (row.Item("KumiaiFax")) & "',
'" & (row.Item("totime")) & "')"
SQLCm.ExecuteNonQuery()
--------------------'追加コード終わり2↑
Next
Next
Catch ex As Exception
Finally
End Try
End Sub
--------------------------------------------------------
しかしながら、行き当たりばったりなコードのため見づらくまた、
「ExecuteNonQuery には Connection が開かれていて使用可能なことが必要です。現在の接続の状態は '終了" です。」
というエラーがでており、対応するため(対応ではないかと思いますが)dbのConnectionを追加で記述するという
おかしなソースコードとなりました。
一応はmdbファイル「てすと会員」のkaiinログインテーブルにinsertはされたものの
いただいた情報をもとに再度ソースコードを書きなおします。
自己解決したとは言え、新たに詳しい解説とともに
コードの参考までいただき本当にありがとうございます。
|