VB.NETデータベースプログラミング
「ADO.NETデータベースプログラミング」は、ADO.NETの基本的なプログラミングを中心に、すぐ使えるサンプルプログラムが満載のメールマガジンです。
メールマガジン購読申込
メルマガ登録・解除
VB.NETデータベースプログラミング奮闘記
>> バックナンバーpowered by まぐまぐ!
メールマガジン サンプル
サンプル ====================================================================== ★★ VB.NETデータベースプログラミング奮闘記 ★★ ---------------------------------------------------------------------- いつもご購読ありがとうございます。ADO.NETの基本的なプログラミングを中 心に掲載しますので、今後ともよろしくお願い申し上げます。 すぐ使えるADO.NET --> サンプルプログラム満載 http://park5.wakwak.com/~weblab/ ====================================================================== ■■ ADO.NETのトランザクション制御1 ■■ トランザクション制御を使用して、社員テーブルと権限テーブルに登録する プログラムを作成します。 登録ボタンを押すと、入力されたデータのエラーチェックをし、エラーがなけ れば、社員コード、氏名、カナ、部門コードを社員テーブルに、パスワードを 権限テーブルに登録します。この時、トランザクション制御を行います。 btnClearを押すと、入力データをクリアして、初期画面に戻します。 ---------------------------------------------------------------------- ◆エラーチェックは、社員登録クラスclsSyainTorokuのSetプロパティに実装 します。入力エラーがあれば、clsExceptionクラスの例外をスローします。 clsException例外クラスは、独自のエラーメッセージを表示するためのクラス として実装します。 clsDBIOクラスは、社員登録で使うメソッドのみ実装していますが、実際には、 必要なメンバをすべて実装します。 ---------------------------------------------------------------------- 今回は、フォームクラスのソースリストを掲載します。他のクラスは、次回以 降になります。ご了承ください。 --【プログラムソースリスト】------------------------------------------ Imports System.Data.OleDb Public Class Form1 Inherits System.Windows.Forms.Form #Region " Windows フォーム デザイナで生成されたコード " '自動生成部分省略 #End Region '----------<< フォームロード処理>>---------- Private Sub Form1_Load _ (ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load Try Dim oDBIO As New clsDBIO() Dim oDataTable As DataTable '部門テーブルの全レコードを取得する oDataTable = oDBIO.getAllBumon() 'コンボボックスに部門名を表示できるように設定する Me.cmbBumonMei.DisplayMember = "部門名" '部門名に対応した部門コードを SelectdValue で取得する Me.cmbBumonMei.ValueMember = "部門コード" 'コンボボックスに部門テーブルデータを連結する Me.cmbBumonMei.DataSource = oDataTable Catch oExcept As Exception '例外が発生した時の処理 MessageBox.Show(oExcept.ToString, "フォームロード例外発生") End Try End Sub '----------<< コンボボックスの選択値が変更された場合>>---------- Private Sub cmbBumonMei_SelectedIndexChanged _ (ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles cmbBumonMei.SelectedIndexChanged '選択した部門コードをラベルに表示 If Me.cmbBumonMei.SelectedIndex <> -1 Then Me.lblBumonCode.Text = CStr(Me.cmbBumonMei.SelectedValue) End If End Sub '----------<< 登録ボタン処理(社員テーブルにレコード追加)>>---------- Private Sub btnInsert_Click _ (ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles btnInsert.Click Try Dim oDBIO As New clsDBIO() Dim oSyain As New clsSyainToroku() '入力項目のエラーチェック oSyain.p社員コード = Me.txtSyainCode.Text oSyain.p社員氏名 = Me.txtSyainSimei.Text oSyain.p社員カナ = Me.txtSyainKana.Text oSyain.p部門コード = Me.lblBumonCode.Text oSyain.pパスワード = Me.txtPassWord.Text '社員テーブルにレコード追加 Dim recCount As Integer recCount = oDBIO.addSyainKengen(oSyain) If recCount = 1 Then MessageBox.Show("登録しました", "登録完了") Else MessageBox.Show("登録に失敗しました", "登録失敗") End If Catch oExcept As clsException '例外が発生した時の処理 MessageBox.Show(oExcept.Message, "エラー発生") Catch oExcept As Exception '例外が発生した時の処理 MessageBox.Show(oExcept.ToString, "例外発生") End Try End Sub End Class