今回から何回かに分けてデータベースを扱うプログラムを
御紹介させていただければと思います。
御紹介させていただければと思います。
まず第一回目はデータベースとの接続を
確立する手順を御紹介します。
SQLServerとのデータのやり取りを行なうには
SqlConnectionオブジェクト使用し、
SQLServerとの接続をまずは確立する必要があります。
SqlConnectionオブジェクトのConnectionStringプロパティに
接続情報となる接続先のサーバ名やデータベース名、
ログインユーザーの情報などを記載した接続文字列を設定し、
Openメソッド呼び出すと指定したデータベースに接続できます。
ConnectionStringプロパティに設定する文字列は
(キーワード)=(値)のペアをセミコロン「;」で区切って記述します。
例:(キーワード1)=(値1);(キーワード2)=(値2);(キーワード3)=(値3)
SQLServer名やデータベース名、ユーザー名やパスワードなどを
上記の書式でConnectionStringプロパティにセットします。
必要最低限の設定内容としては下記のキーワードを設定します。
Data Source SQLServerのサーバ名・インスタンス名。
サーバ名の前に接続プロトコルを指定するプレフィクスを
指定することも可能です。
「np:」 名前付きパイプ
「tcp:」 TCP/IP
「lp:」 共有メモリ
Initial Catalog 接続するデータベース名
Integrated Security True - 現在のWindows資格情報で認証されます。
(Windows認証)
False - ユーザー名とパスワードを指定し認証します。
(SQLServer認証)
User ID SQLServer認証でログインするアカウント名
Password SQLServer認証でログインする際のアカウントのパスワード
ではサンプルを見てみましょう。
設定例として下記の情報でSQLServer認証で接続する
接続文字列を作成し、SQLServerへ接続してみましょう。
SQLServer サーバ名:DBServer
SQLServer インスタンス名:MyInstance
SQLServer データベース名:ExampleDB
SQLServer ユーザー名:sa
パスワード:*******
Private Sub prcDataOperation
Dim strConnect As String
'接続文字列を作成する
strConnect = "Data Source=DBServer\MyInstance;" & _
"Initial Catalog=ExampleDB;" & _
"Integrated Security=False;" & _
"User ID=sa;" & _
"Password=*******"
'データベースへ接続しデータ操作を行う
Try
Using conSQLConnect As New SqlConnection
'接続文字列をセットし、データベースへ接続する。
With conSQLConnect
.ConnectionString = strConnect
.Open()
End With
'###この部分にデータベース処理を記述します。###
'処理が終了すれば接続を閉じる
conSQLConnect.Close()
End Using
'エラー処理
Catch ex As Exception
MsgBox("No." & Err.Number & vbCrLf & Err.Description, _ MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, _
"データベース接続エラー")
Exit Sub
End Try
End Sub
Exit Sub
End Try
End Sub
以上がデータベースへ接続するサンプルです。
上記の他にも接続するプロトコルを指定したり、
タイムアウト時間を設定したりなど様々な設定が可能です。
もし機会があれば御紹介できればと思っております。
今回は簡単な御紹介となっておりますので、
MicroSoftのドキュメントなども参考にしていただければ幸いです。
また、ここで使用しているUsingステートメントや
Try・Catch・Finallyによるエラー処理に関しても
またの機会に御紹介できればと思います。
他にもいろいろと方法もございますし、
開発するシステムによっては、よりふさわしい方法もあるかと思いますが、
御参考にしていただければと思います。
サンプルはVB.NETで作成しておりますが、
考え方はどんな言語でも同じですので、
参考にしていただければと思います。
0 件のコメント:
コメントを投稿