WebSurfer's Home

トップ > Blog 1   |   ログイン
APMLフィルター

Visual Studio の接続

by WebSurfer 2010年9月15日 22:13

ASP.NET ベースの Web アプリケーションの開発時に Visual Studio を SQL Server に接続する話です。

(2014/6/11 追記:以下は Visual Studio 2010 までの話です。ユーザーインスタンスが非推奨になり、開発用には、ユーザーインスタンスに代えて、SQL Server 2012/2014 Express LocalDB の使用が推奨されています。Visual Studio 2012 以降ではユーザーインスタンスではなく LocalDB に接続することになりますので注意してください)

Visual Studio のサーバーエクスプローラ(VWD Express 版はデータベースエクスプローラ)を開いてデータ接続のノードを右クリックし、「接続の追加」メニューを表示します。その中の「データソース(S):」の「変更」ボタンをクリックすると、下のような選択画面が表示されます。

Visual Studio からデータソースの選択

SQL Server を DB に利用する場合、選択は以下のとおりとなります。なお、VWD Express, VC# Express, VB Express では既定のインスタンスへの接続ができない(上の画像で「Microsoft SQL Server」のメニューがない)こと、SQL Server Express Edition 以外にはユーザーインスタンスの機能がないことに注意してください。

  1. App_Data フォルダに置いた DB のユーザーインスタンスに接続 ==> 「Microsoft SQL Server データベースファイル」を選択。
  2. ローカルまたはリモート SQL Server DB の既定のインスタンス(または名前つきインスタンス)に接続 ==> 「Microsoft SQL Server」を選択。

自分の場合、開発環境ではほぼ 100% 前者を利用しています。アタッチとかログインなどの設定をしなくても、Access と同様に簡単に SQL Server に接続して DB を扱えるようになりますので。

後者は、SQL Server の知識をある程度得てから、必要があれば利用する程度にした方がよさそうです。Visual Studio のウィザードを使うと、DB の作成からアクセスの設定まで簡単にできてしまいますが、中で何が起こっているか理解していないままやると、後で収拾がつかなくなる恐れがありますので。← 経験談(笑)

SQL Server Express Edition の場合、自動生成される接続文字列は以下のようになります。ご覧のとおり、前者はユーザーインスタンスが有効になっています。(注:SQL Server の Express 版をデフォルト設定でインストールすると「名前つきインスタンス」になります。以下の接続文字列で SQLEXPRESS は名前つきインスタンスの名前です)

Microsoft SQL Server データベース ファイル
---------------------------------------
Data Source=.\SQLEXPRESS;
AttachDbFilename=|DataDirectory|\<mdf ファイル名>;
Integrated Security=True;
Connect Timeout=30;
User Instance=True

Microsoft SQL Server
--------------------
Data Source=.\SQLEXPRESS;
Initial Catalog=<データベース名>;
Integrated Security=True

なお、ここに書いたことは、Visual Studio から DB への接続の話であり、アプリケーションから DB への接続とは違うことに注意してください。

アプリケーションから SQL Server の既定のインスタンスへの接続は、接続文字列の変更と SQL Server 側の設定でどのようにでもできます。

Tags:

SQL Server

About this blog

2010年5月にこのブログを立ち上げました。主に ASP.NET Web アプリ関係の記事です。

Calendar

<<  2024年4月  >>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

View posts in large calendar