none
VSからSQLServerに接続が出来ない RRS feed

  • 質問

  • お世話になります。

    私はSE初心者です。

    職場ではVSのC#でコーディングを行い、SQLServerをDBとして環境構築を行い、現在担当案件の開発を行っています。

    職場で構築した環境と同じような環境を自宅に構築して、自宅でもプログラミングの勉強してみようとしているところなのですが、現在、環境構築の段階で悪戦苦闘中です。

    (なお、職場の環境構築は他者が行ったものをそのまま使用しているため、自分自身で環境構築した経験がありません。)

     

    C#の【新しいデータソースの追加】で SQL Server にある DB(*.mdf)への接続を試みていますが、どうも上手くいきません。

    手順は以下の通りです。

    ①SQL Server Management StudioでDBを作成、テーブルの作成し、InsertやUpdate等の更新が出来ることを確認。

    ②C#を立ち上げ、新しいプロジェクトを作成後、「データ」→「新しいデータソースの追加」を選択。

    ③データソースの種類を選択で「データベース」を選択。

    ④データベースモデルの選択で「データセット」を選択。

    ⑤データ接続の選択で「新しい接続」を選択。

    ⑥接続の追加でデータソースを「Microsoft SQL Server Compact 3.5 (.NET Framework Microsoft SQL Server Compact 3.5 用データ プロバイダー)」から変更を選択。

    ⑦「Microsoft SQL Server データベースファイル」を選択。

    ⑧データベースファイル名で、①で作成したデータベース(拡張子mdf)を選択し、「開く」を選択すると、

    「test1.mdf このファイルを開くアクセス許可がありません。アクセスの取得については、ファイルの所有者または管理者に連絡してください。」

    と表示される。

     

    環境は以下の通りです。

    OS:Windows Vista

    Microsoft Visual C# 2010 Express

    SQL Server 2008 Express

    SQL Server 2008 Management Studio Express

     

    職場の環境と比べて気付いている違いとしては、

    ①職場はC#が2008の正規版であること(たしかProfessional)。

    ②SQL Server Management Studio のログイン画面での認証が職場はSQL Server 認証であること。

     

    C#がExpress版だとSQLServerに接続できなかったりするのでしょうか?

    アドバイスをいただくにあたり、他に必要な情報があれば、ご指摘いただければ、わかる範囲で追加記載していきます。

    どうぞよろしくお願いいたします。

    2011年9月10日 9:39

回答

  • SQL Server Management Studioで既にアタッチ済みの可能性があります。SQL Server Management Studioでデタッチしてから試してみて下さい。

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク タタ0831 2011年9月10日 16:23
    2011年9月10日 12:43

すべての返信

  • SQL Server Management Studioで既にアタッチ済みの可能性があります。SQL Server Management Studioでデタッチしてから試してみて下さい。

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク タタ0831 2011年9月10日 16:23
    2011年9月10日 12:43
  • trapemiya様

     

    おっしゃるとおりでした。

    Webでデタッチの方法を調べながら実施した後に、C#側で再度接続を試みたところ、無事接続が出来ました。

    迅速かつ、適切なアドバイスに感謝いたします。ありがとうございました!

    2011年9月10日 16:26
  • > C#がExpress版だとSQLServerに接続できなかったりするのでしょうか?

    C# というか、Visual Studio の制限です。C#(.NET) では SQL Server に接続できるのですが Visual Studio Express の場合は、

    • Visual Studio に頼らずに接続設定を手書きする。
    • SQL Mangement Studio を使用しない。 (SQL Server 上にデータベースを作成しない)

    のどちらかになります。今回の場合はデタッチされたということで後者での対応を行ったことにあんります。

    ※ Standard 以上の Visual Studio の場合、Visual Studio 上から SQL Server 上のデータベースへの接続設定ができます。

    # この質問、二か月に1度ぐらいの割合で登場しますね。

     

    2011年9月12日 4:03
  • K.Takaoka様

     

    自分なりに過去の質問等も検索したつもりでしたが、見つけられていませんでした。申し訳ありません。

    SE初心者ですが、下手くそなりに一応それなりのコーディングは出来るようになったつもりですが、環境設定はいつも人任せで・・・。食材をすべてそろえてもらい、包丁で切ってもらうところまでやってもらわないと料理が出来ない状態では料理人とは言えませんね。いろいろ勉強していきたいと思います。ご教示ありがとうございました!

    2011年9月14日 21:16
  • そんなに恐縮されなくてもよいのですが、結構よく聞かれるネタなので、なんとかわかりやすい表現等はないですかねーってところです。

    逆に、つまってしまった人が、どういう部分で誤解があったとか、どういう手順がわかりにくかったとか、そういった情報を提供されると、後から同じことで引っかかる人を減らせるかな? とは思います。

     

    2011年9月15日 3:55