社員マスターテーブルアクセスクラス
販売管理データベースアクセス基本クラスから派生した社員テーブルアクセスクラスを作成します。この上の基本クラスは抽象クラスとして実装しているので、この社員テーブルアクセスクラスでインスタンスを生成します。
DBアクセス基本クラス サンプルプログラム
社員テーブルアクセスクラスは、社員マスターテーブルのアクセスに必要なメンバーを実装します。
- コンストラクタ(引数:なし)
- 1レコード取得メソッド(引数:社員コード)
Overloadsキーワードを指定して、メソッド内で、基本クラスの同名のレコード取得メソッドを呼び出す。基本クラスのメソッドの引数には、テーブル名、主キーフィールド名、社員コードを指定する。
このクラスに、レコード更新・削除・追加のメソッドを追加していけば、社員テーブルアクセス派生クラスが完成します。
ソースリストの枠内をクリックすると全選択できます。
Option Strict On Imports System.Text.RegularExpressions '////////////// 派生クラス:社員テーブルアクセスクラス /////////////// Public Class ClsShainTableIO Inherits ClsHankanDBIO '=================================================================== ' 機能:コンストラクタ ' 引数:なし '=================================================================== Public Sub New() MyBase.New() End Sub '******************************************************************** ' 機能:引数の社員コードのレコードを社員テーブルから取得する ' 引数:社員コード ' 戻値:取得したレコード '******1*********2*********3*********4*********5**********6*********7 Public Overloads Function GetKeyData(shainCode As String) As DataTable Dim retDt As New DataTable ' リターン値 ' 引数Nothing(未設定)・空白チェック If shainCode.Length = 0 Then Throw New myShainCodeException("エラー:社員コードが未入力") End If ' 引数の前後の空白は除去する shainCode = shainCode.Trim() ' キー値文字チェック(キー値は英数字のみで構成されている) If Not Regex.IsMatch(shainCode, "^[0-9a-zA-Z]+$") Then ' 英数字以外はエラー Throw New myShainCodeException("エラー:社員コードに不正な文字あり") End If ' キー値長さチェック(社員コードは5桁) If Not shainCode.Length = 5 Then ' 5桁以外はエラー Throw New myShainCodeException("エラー:社員コードの桁数が正しくない") End If ' 社員テーブルから引数コードのレコードを取得する retDt = MyBase.GetKeyData("社員テーブル", "社員コード", shainCode) ' ◆戻値を設定してリターン Return retDt End Function End Class