ASP.NET MVC5 のチュートリアルを実践しておりますと、開発環境の内部に自然とデータベースが作成され、自然と接続しております。
大変便利ですの♪
ですけれども、自分の意志でデータベースを作成し、そして、自分の意志でプロジェクトから接続するデータベースを決めるにはどうしたらよいのかしら?
今回、それらのやり方を残します!
DB の作成方法
Visual Studio 2015 に標準の SQL Server への作成方法となります。
データベースを作成するだけならば、Visual Studio 2015 を立ち上げるだけで操作が可能で、その後にプロジェクトを立ち上げる必要はございません。
- 表示 > SQL Server Object Explorer (Ctrl + \, Ctrl + s)。または、ウインドウ左にある。
- SQL Server > (localdb)\ProjectsV12 > Databases > 右クリック >Add Database
(localdb)\ProjectsV12 の部分は別環境で、(localdb)\MSSQLLocalDB の場合もございました。
今回、試しに「New Database」を作成いたしました。
作成した DB へとつなげるための接続文字列の入手方法
先ほど作成した「New Database」を例にとります。
- SQL Server Object Explorer で New Database を右クリック > Properties
- Connection string の値をコピー
これで完了です!例えば次のようになりました。使うときは、これを DB 接続設定に貼り付けるだけですの♪
Data Source=(localdb)\ProjectsV12;Initial Catalog=”New Database”;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False
ASP.NET MVC5 プロジェクトから DB へ接続する設定
web.config の connectionStrings
<add name="Sample1Context" connectionString="Data Source=(localdb)\MSSQLLocalDB; Initial Catalog=Sample1Context-20151016212614; Integrated Security=True; MultipleActiveResultSets=True; AttachDbFilename=|DataDirectory|Sample1Context-20151016212614.mdf" providerName="System.Data.SqlClient" />
この部分の connectionString を先ほどコピーした接続文字列に置き換えるだけですの♪おっと、接続文字列のダブルクォーテーション「”」はシングルクォーテーション「’」に変えておいたほうがよさそうですわね♪
<add name="Sample1Context" connectionString="Data Source=(localdb)\ProjectsV12;Initial Catalog='New Database';Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" providerName="System.Data.SqlClient" />
この状態でマイグレーションなどを行いますと、New Database に接続されましてテーブル追加などがなされますわ♪
2015年12月18日追記。補足
- [SQL Server Object Explorer] はデータベース接続クライアント (SQL Server Management Studio) の幾つかの機能を持っているイメージ
- [サーバーエクスプローラー] はプロジェクトの接続設定を使ってプロジェクトからデータベースへ接続するイメージ
- よって、[サーバーエクスプローラー] からデータベースへ接続できれば、Web.config の connectionString が正しく機能していると判断できる。
- 確認手順は以下のとおり。
- [サーバーエクスプローラー] > [データ接続] > [connectionString (SampleProject)1] を開く。
- 接続できていれば、 [テーブル] などのデータベース項目が表示される。
おわりに
冒頭でもふれましたけれども、本格的に開発をしようと思い立ったたら、予め備わっているローカル DB だけで全てまかっていくのは難しく存じます。
そこで今回、どんな DB にでも繋げられるよう、ポイントをおさえました。DB 関連については、以前の次の投稿も参考になると存じます。
以上です。