「共通関数の定義ファイルを追加」の編集履歴(バックアップ)一覧に戻る

共通関数の定義ファイルを追加 - (2008/02/18 (月) 10:27:39) のソース

// 現在のページ名
*&this_page() 

**概要
共通関数を定義したクラスファイルを追加する。
クラスファイルには、データベースへの接続等のどのシステムにも共通の処理を記述してある。

**前提条件
なし

**手順
[ソリューションエクスプローラ] -> 「新しい項目の追加」

&img(273.jpg)

「クラス」を選択 -> 「追加」

&img(274.jpg)

class1.vb を以下のように変更。

#highlight(vb.net){
Imports Microsoft.VisualBasic

Public Class class_common
    Inherits System.Web.UI.Page

    Public Class adonet

        ' ******************************************************
        ' DB接続
        ' ******************************************************
        Public Shared Function DBConnect( _
        ByVal DBType As String, _
        ByRef Connection As Data.Odbc.OdbcConnection, _
        ByVal strTarget As String, _
        ByVal strDB As String, _
        ByVal strUser As String, _
        ByVal strPass As String _
        )
            Dim ConnectionString As String = ""

            If IsNothing(Connection) Then
                Connection = New Data.Odbc.OdbcConnection()
            End If

            Select Case DBType
                'Case "Excel"
                '    ConnectionString = _
                '     "Provider=Microsoft.Jet.odbc.4.0;" & _
                '     "Data Source=" & strTarget & ";" & _
                '     "Extended Properties=""Excel 8.0;IMEX=1;"""
                'Case "MDB"
                '    ConnectionString = _
                '     "Provider=Microsoft.Jet.odbc.4.0;" & _
                '     "Data Source=" & strTarget & ";"
                'Case "MySQL"
                '    ConnectionString = _
                '     "Provider=MSDASQL" & _
                '     ";DSN=" & strTarget & _
                '     ";DATABASE=" & strDB & _
                '     ";UID=" & strUser & _
                '     ";PWD=" & strPass & _
                '     ";"
                Case "SQLServer"
                    ConnectionString = _
                     "Driver={SQL Server};" & _
                     "SERVER=" & strTarget & ";" & _
                     "DATABASE=" & strDB & ";" & _
                     "UID=" & strUser & ";" & _
                     "PWD=" & strPass & ";"
                Case "ASP.NET開発サーバ"
                    ConnectionString = _
                     "Driver={SQL Server};" & _
                     "SERVER=" & strTarget & ";" & _
                     "DATABASE=" & strDB & ";" & _
                     "Integrated Security=SSPI;"

            End Select

            On Error Resume Next

            Connection.ConnectionString = ConnectionString
            Connection.Open()

            If Err.Number <> 0 Then
                Return False
            Else
                Return True
            End If

            On Error GoTo 0

        End Function

        ' ******************************************************
        ' DB終了処理(接続を閉じる)
        ' ******************************************************
        Public Shared Function DBClose( _
        ByRef Connection As Data.Odbc.OdbcConnection _
        )

            On Error Resume Next
            If Connection.State >= 1 Then
                Connection.Close()
            End If
            On Error GoTo 0

            Return True

        End Function

        ' ******************************************************
        ' DB読込み
        ' 
        ' 引数1: DBへの接続
        ' 引数2: テーブルリーダー(更新クエリ発行時は使用しませんが、ダミーで渡してください。)
        ' 引数3: SQL
        ' 引数4: 更新フラグ。
        '           True: SQL発行のみ行います。
        '           False: SQL発行後、テーブルリーダーを作成します。
        ' 戻り値: True(成功) , False(エラー発生)
        ' ******************************************************
        Public Shared Function DBGet( _
        ByRef Connection As Data.Odbc.OdbcConnection, _
        ByRef DataTableReader As Data.DataTableReader, _
        ByVal SqlQuery As String, _
        ByVal bUpadateFlg As Boolean _
        )

            ' コマンド作成
            Dim command As Data.Odbc.OdbcCommand = New Data.Odbc.OdbcCommand
            command.CommandText = SqlQuery
            command.Connection = Connection

            ' テーブルアダプタ+データセット作成
            Dim DataAdapter As Data.Odbc.OdbcDataAdapter
            Dim DataSet As Data.DataSet = New Data.DataSet

            ' テーブルリーダ初期化
            DataTableReader = Nothing

            Try

                ' 更新フラグによって処理分岐
                If bUpadateFlg Then
                    command.ExecuteNonQuery()
                Else
                    DataAdapter = New Data.Odbc.OdbcDataAdapter(command)
                    DataAdapter.Fill(DataSet)
                    DataTableReader = DataSet.CreateDataReader()
                End If

                Return True

            Catch ex As Exception

                Return False

            End Try

        End Function

    End Class

End Class
}
記事メニュー
目安箱バナー