今回は、ACCESSデータベースのデータ登録 更新 削除の方法を紹介していきます。

ACCESSデータベースの接続方法の詳細を知りたい方は、先にこちらを参考にしてみてください。

ACCESSデータベースの接続方法とデータの取得方法を記載しています。

それでは、VB.NETからACCESSのデータの更新方法を見ていきましょう。

ACCESSデータベースのデータ更新

ACCESSのデータの登録、更新、削除をしていきます。

対象のデータは、下記の画像のような3件のデータになっています。

 

VB.NETからACCESSのデータを更新してみましょう。

1.名前が「伊藤」のデータを更新

2.新しいデータを1件追加

3.名前が「田中」のデータを削除

Imports System.Data.OleDb

Public Class frmAccessDbUpdate
    Private Sub frmAccessDbUpdate_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        'SQL作成
        Dim sql = New System.Text.StringBuilder()
        sql.AppendLine("UPDATE 名前テーブル")
        sql.AppendLine("SET 動物 = 'ANIMAL'")
        sql.AppendLine("WHERE 名前 = '伊藤'")

        Dim sql2 = New System.Text.StringBuilder()
        sql2.AppendLine("INSERT INTO 名前テーブル(")
        sql2.AppendLine("ID")
        sql2.AppendLine(",名前")
        sql2.AppendLine(",動物")
        sql2.AppendLine(",身長")
        sql2.AppendLine(")VALUES(")
        sql2.AppendLine("4")
        sql2.AppendLine(",'山田'")
        sql2.AppendLine(",'いぬ'")
        sql2.AppendLine(",170")
        sql2.AppendLine(")")

        Dim sql3 = New System.Text.StringBuilder()
        sql3.AppendLine("DELETE FROM 名前テーブル")
        sql3.AppendLine("WHERE 名前 = '田中'")

        'Access接続準備
        Dim command As New OleDbCommand
        Dim cnAccess As OleDbConnection = New OleDbConnection
        cnAccess.ConnectionString = My.Settings.AccessCon

        'Access接続開始
        cnAccess.Open()

        Dim tran As OleDbTransaction
        tran = cnAccess.BeginTransaction

        Try

            command.Connection = cnAccess
            command.Transaction = tran

            command.CommandText = sql.ToString
            command.ExecuteNonQuery()

            command.CommandText = sql2.ToString
            command.ExecuteNonQuery()

            command.CommandText = sql3.ToString
            command.ExecuteNonQuery()

            tran.Commit()

        Catch ex As Exception
            tran.Rollback()
            Throw
        Finally
            command.Dispose()
            cnAccess.Close()
        End Try
End Class

 

解説

7~10行目:名前が「伊藤」のデータを更新 するためのSQLを作成

12~23行目:新しいデータを1件追加 するためのSQLを作成

25~27行目:名前が「田中」のデータを削除 するためのSQLを作成

30~31行目:SQLを実行するのに必要な変数を設定

32行目:作成した接続文字列を設定

35行目:ACCESSに接続

37~38行目:トランザクションを開始(トランザクションがわからない方はこちらを参考にしてみてください。)

42~43行目:コネクションの設定とトランザクションの設定

45~52行目:各SQLを実行(command.ExecuteNonQuery()

 

結果

データの登録、更新、削除がされていることが確認できましたね!

 

まとめ

今回はACCESSデータベースの更新方法を紹介しました。

実行するときは、トランザクションを開始してから実行するようにしましょう。

実行するには「OleDbCommand.ExecuteNonQuery()」を利用しましょう。

 

VB.NETの記事一覧

おすすめの記事