SQL Severに接続する認証方法としてWindows認証とSQL Server認証があります。
今までSQL Server認証しか使ったことがなかったのですが最近Windows認証で接続する機会があったので備忘録としてコードを記載しておきます。
SQL Server認証
'SQL Server認証
DataConnection.ConnectionString = "Data Source=" & prtServer & ";" _
& " User ID=" & prtUserId & ";" _
& " Password=" & prtUserPass & ";" _
& " Initial Catalog=" & prtDatabase & ";"
Try
DataConnection.Open()
DataCommand.Connection = DataConnection
Catch ex As Exception
'エラー処理を記載
End Try
prtServer:サーバー名
prtUserId:ログイン
prtUserPass:パスワード
prtDatabase:接続するデータベース名
Windows認証
'Windows認証
DataConnection.ConnectionString = "Data Source=" & prtServer & ";" _
& " Initial Catalog=" & prtDatabase & ";" _
& " Integrated Security=True;"
Try
DataConnection.Open()
DataCommand.Connection = DataConnection
Catch ex As Exception
'エラー処理を記載
End Try
違いはユーザーIDとパスワードを渡す代わりにIntegrated Security=true;を渡す点。
市販のソフトウェアパッケージがSQL Serverを使っていてデータベースの中身を確認する際にWindows認証での接続が必要でした。
私がシステム開発する際は必ずSQL Server認証にしています。その方が汎用性があっていいなと…。
どちらの方が一般的なのか少し気になるところ。