DBアクセス基本クラスから派生した社員テーブルアクセスクラスのレコード削除関連のメンバーです。

社員テーブルアクセスクラスは、sampleDBアクセス基本クラスを継承し、基本クラスにないメンバーを実装します。
ここでは、削除に必要な次のメンバーを実装します。更新や検索関連のメンバーは除きました。
| Key | 列名 | データ型 | NULLを許容 |
|---|---|---|---|
| ● | 社員コード | nchar(5) | しない |
| 社員氏名 | nvarchar(20) | しない | |
| 社員カナ | nvarchar(40) | しない | |
| 部署コード | nchar(4) | しない | |
| 更新日時 | datetime | しない |
Option Strict On Imports System.Data.SqlClient Imports System.Text.RegularExpressions Imports System.Transactions ' [参照の追加]で追加 Public Class ClsShainTableIO Inherits ClsSampleDBIO '========================================================== ' 機能:コンストラクタ ' 引数:なし '========================================================== Public Sub New() MyBase.New() End Sub '********************************************************** ' 機能:社員マスター主キー値レコードの有無を調べるメソッド ' 引数:社員コード ' 戻値:レコードあり --> True、レコードなし --> False '******1*********2*********3*********4*********5**********6 Public Overloads Function _ ExistKeyData(ByVal shainCode As String) As Boolean Dim retExist As Boolean ' リターン値 ' 引数の空文字列チェック If shainCode.Length = 0 Then Throw New myShainCodeException _ ("社員コードが未入力") End If ' キー値文字チェック(キー値は数字のみで構成されている) If Not Regex.IsMatch(shainCode, "^[0-9]+$") Then ' 数字以外はエラー Throw New myShainCodeException _ ("社員コードに数字以外の文字があります") End If ' キー値長さチェック(社員コードは5桁) If Not shainCode.Length = 5 Then ' 5桁以外はエラー Throw New myShainCodeException _ ("社員コードの桁数が正しくない") End If ' 社員テーブルに引数のレコードが存在するかチェックする retExist = MyBase.ExistKeyData _ ("社員テーブル", "社員コード", shainCode) ' ◆戻値を設定してリターン Return retExist End Function '********************************************************** ' 機能:引数のレコードを社員マスターから取得する ' 引数:社員コード ' 戻値:引数に指定した社員コードのレコード '******1*********2*********3*********4*********5**********6 Public Overloads Function _ GetKeyData(ByVal shainCode As String) As DataTable Dim retDt As New DataTable ' リターン値 ' 引数の空文字列チェック If shainCode.Length = 0 Then Throw New myShainCodeException _ ("社員コードが未入力") End If ' キー値文字チェック(キー値は数字のみで構成されている) If Not Regex.IsMatch(shainCode, "^[0-9]+$") 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 '********************************************************** ' 機能:社員マスターから1レコードを削除するメソッド ' 引数:削除する社員コード ' 戻値:削除したレコード数 '******1*********2*********3*********4*********5**********6 Public Overloads Function _ DeleteKeyRecord(ByVal shainCode As String) As Integer Dim retDeleteCount As Integer ' リターン値 ' キー値のレコード存在チェック If Me.ExistKeyData(shainCode) = True Then ' レコードが存在すれば削除 retDeleteCount = MyBase.DeleteKeyData _ ("社員テーブル", "社員コード", shainCode) Else ' レコードが存在しなければ例外をスロー Throw New myDBIOException _ ("社員コードのレコードが存在しません") End If ' ◆戻値を設定してリターン Return retDeleteCount End Function '********************************************************** ' 機能:社員マスターの行データ生成 ' 引数:なし ' 戻値:生成した行データ '******1*********2*********3*********4*********5**********6 Public Overloads Function CreateDataRow() As DataRow Dim retRow As DataRow ' リターン値 retRow = MyBase.CreateDataRow("社員テーブル", "社員コード") Return retRow End Function End Class
| ◆ DBアクセス TOP頁へ ◆ |
|---|
| ◆ SQL Server ◆ |
| Sql ExecuteScalar |
| Sql ExecuteReader |
| Sql ComboBox |
| Sql ListBox |
| Sql DataGridView |
| ◆ MDB ◆ |
| Ole ExecuteScalar |
| Ole ExecuteReader |
| Ole ComboBox |
| Ole ListBox |
| Ole DataGridView |
| ◆ 受注エントリー TOP頁 ◆ |
|---|
| テーブル定義 |
| データ接続の追加 |
| システム日付取得 |
| DataGridView列スタイル |
| フォームロード・初期化 |
| DBアクセス基本クラス |
| 商品クラス |
| 得意先クラス |
| 受注ディテールクラス |
| 受注ヘッダークラス |
| 受注伝票データクラス |
| 受注伝票アクセスクラス |
| 行確認・追加ボタン |
| 得意先確認・変更ボタン |
| 明細行変更・完了ボタン |
| 明細行削除ボタン |
| 受注登録ボタン |
| クリアボタン |