.NET TIPS SQL Server接続文字列を簡単に作成するには?[2.0以降、C#、VB]デジタルアドバンテージ 一色 政彦2010/08/19 |
|
|
.NETアプリケーションからSQL Serverにアクセスするには、接続に関する情報を1つの文字列にまとめた「接続文字列」が必要になる。例えば、次の文字列は接続文字列の一例である。
|
|
SQL Server接続文字列の例 | |
接続文字列の中で用いられているキーワードについては、「MSDN:SqlConnection.ConnectionString プロパティ」で紹介されているキーワードの一覧を参考にしてほしい。 |
接続文字列には、さまざまなキーワードを使いこなす必要がある(使用できるキーワードの一覧については「MSDN:SqlConnection.ConnectionString プロパティ」を参照されたい)。そのため、何の手掛かりもなしに、ゼロから接続文字列を作成するのは大変だ。
そのような場面で接続文字列の作成を支援してくれるSqlConnectionStringBuilderクラス(System.Data.SqlClient名前空間)が、(.NET Framework 2.0以降では)提供されている。SqlConnectionStringBuilderクラスでは、接続文字列の各キーワードがプロパティとして用意されている。例えば、データソースの「DataSource」キーワードに対しては、DataSourceプロパティが用意されている。
次のコードは、実際にSqlConnectionStringBuilderクラスを用いて、上記の「SQL Server接続文字列の例」で示した文字列を作成するコンソール・アプリケーションのサンプルだ。
|
||
SqlConnectionStringBuilderクラスを用いたSQL Server接続文字列の作成例(上:C#、下:VB) |
最終的な接続文字列は、SqlConnectionStringBuilderオブジェクトのConnectionStringプロパティにより得られる。
上記のコードを入力する際には、(次の画面に示すように)接続文字列の各キーワードはIntelliSenseで表示され、その説明も表示されるので、簡単に接続文字列を作成できる。
IntelliSenseで表示される接続文字列の各キーワードに関する説明 |
なお、上記のコードで示したSqlConnectionStringBuilderオブジェクトのプロパティを設定する方法だけではなく、下記のコードに示すように、SqlConnectionStringBuilderオブジェクトのインデクサ(C#)/既定のItemプロパティ(VB)経由で接続文字列の各キーワードを指定することも可能だ。
|
||
SqlConnectionStringBuilderクラスを用いたSQL Server接続文字列の作成例(上:C#、下:VB) |
また、逆に既存の接続文字列からSqlConnectionStringBuilderオブジェクトを作成することもできる。
これには、単にSqlConnectionStringBuilderクラスのインスタンスを作成する際に、コンストラクタに引数として接続文字列を渡せばよい。あるいは、SqlConnectionStringBuilderオブジェクトのClearメソッドを呼び出して、いったん接続文字列に関する情報をクリアしたうえで、ConnectionStringプロパティに接続文字列を設定してもよい。
利用可能バージョン:.NET Framework 2.0以降 カテゴリ:データベース 処理対象:接続文字列 カテゴリ:クラス・ライブラリ 処理対象:文字列 使用ライブラリ:SqlConnectionStringBuilderクラス(System.Data.SqlClient名前空間) |
「.NET TIPS」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|