質問: 最初は記事の通りに進めようとしましたが、画面が若干2016と違いますし、エラーでうまくいかなかったので、まずはManagement Studioからpubsデータベースを開くところから始めようとしています。
回答: 質問者さんは、チュートリアルを始める前の段階で、まず SQL Server 2016 Express の既定のインスタンス(または名前付きインスタンス)に DB をアタッチし、それに SSMS を使って接続することをトライ中と理解しています。 > > 物理ファイル "C:\Work\DB\pubs.mdf" を開けません。 > > > MSDN ライブラリによると、"MSSQLServer サービスの開始アカウント: アカウントは、データまたはログ ファイル (.mdf、.ndf、.ldf) が常駐するフォルダーに対するフル コントロール権限を持っている必要があります。" ということですが、Work フォルダに対して必要な権限がないのでは? 詳しくは以下の記事を見てください。 DB のアタッチ SQL Server のアカウントに Work フォルダに対する権限を与えるより、SQL Server のインストール時に自動的に必要な権限が与えられる Data フォルダに pubs.mdf をコピーして、それをアタッチした方が簡単ですので、そうすることをお勧めします。 以下、アタッチに失敗するということとは関係ないことですが、注意すべきことを書いておきます。 (1) SQL Server の Express 版をインストールすると、デフォルトでは「名前つきインスタンス」となり、インスタンス名は SQLEXPRESS になります。TCP/IP で接続する際は SQL Server Browser が必要になります(開発環境で共有メモリを使う場合は不要ですが)。 詳しくは以下の記事を見てください。 SQLEXPRESS は「名前つきインスタンス」名 (2) 参考にされている記事は SQL Server 2008 Express で利用できるユーザーインスタンスに DB をアタッチしてそれに接続することを前提に考えられています。 ユーザーインスタンスが何か不明でしたら以下の記事を見て下さい。 ユーザーインスタンス 今はユーザーインスタンスは非推奨になっており(まだ使うことはできますが)、VS2015 などの新しい環境では LocalDB を使うようにウィザードが動くかもしれません。チュートリアルに進む際はその点に注意してください。