環境は WindowsXP+VisualStudio2005-Pro です。
現在は、下記のような手順で
'データベース接続内容設定
dbcon.ConnectionString = _
"provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source= C:\Data.mdb "
'データベース接続開始
dbcon.Open()
'データのSelectコマンドをセット
dbcmd.CommandText = "Select * from Data01"
'コマンドとコネクション設定
dbcmd.Connection = dbconUsen
'データアダプタにセレクトコマンドを設定
dbadpt.SelectCommand = dbcmdUsen
'データセット初期化
datset.Tables.Clear()
'データセットに作詞作曲家データを入れる
dbadpt.Fill(datsetUsen, "Data01")
’いろいろテーブルを加工
・・・・・・・・
’更新
dbadpt.Update(datsetUsen.Tables(0))
で書き換えや追加ができています。
ただ、わざわざDataTableに抽出せずにひとつのSQL文だけで
すむものも出てきました。
dbcon.Open()
で接続が確立しているものに対して簡単にSQLを実行できる
方法はないでしょうか?
#WEBで検索するとAccess上でのDocmdは多く見つかりますがVB.NET
#においての応用例が見つかりませんでした。
CreateCommandしてExecuteNonQueryとか,ExecuteScalerとかでしょうか。
・System.Data.IDbConnection.CreateCommand
http://msdn.microsoft.com/ja-jp/library/system.data.idbconnection.createcommand(VS.80).aspx
・System.Data.IDbCommand.ExecuteNonQuery
http://msdn.microsoft.com/ja-jp/library/system.data.idbcommand.executenonquery(VS.80).aspx
・System.Data.IDbCommand.ExecuteNonScaler
http://msdn.microsoft.com/ja-jp/library/system.data.idbcommand.executescalar(VS.80).aspx
場合によっては,ExecuteReaderかもしれませんが,読み取りのみを目的とするのでなければ,DataSet使った方が楽でしょう。
・System.Data.IDbCommand.ExecuteReader
http://msdn.microsoft.com/ja-jp/library/68etdec0(VS.80).aspx
ありがとうございました。
・System.Data.IDbCommand.ExecuteNonQuery
という方法で実現できました。
ツイート | ![]() |