重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

C#もデータベースプログラミングも初心者です。
C言語にて組込みファームウェアを開発していましたので、Windowsアプリは素人です。

そこで、現在VisualStudio 2010 C# Expressにてデータベースプログラミングを勉強している
のですが、データベースサーバーに接続する方法として、プログラムにで接続する方法と
VisualStudioのツールを使ってデータベース接続する方法があるように思います。
複数のリモートサーバーに接続する必要がある場合は、どちらを選択すべきでしょうか?

プログラムにて接続する場合は、con.open();やコネクションを作成してトランザクション
を設定したりしなくてはならないようです。
もし、VisualStudioを使えば、このあたりのプログラムを書く必要がないように思います。

アドバイスを頂けたらうれしく思います。
よろしくお願い致します。

質問者からの補足コメント

  • うーん・・・

    教えて頂いたEFのためのURLからVS2010Expressの場合という箇所を見つけました。

    しかし、よくわかりません。
    プロジェクトを作成するのは、通常のフォームアプリプロジェクトのことでしょうか?
    また、Visual Web Developer 2010 は、どこから起動するのでしょうか?
    VS2010Expressから起動するわけではないように思いますので、探してみます。


    Visual C#でプロジェクトを作成して閉じる。
    Visual Web Developer 2010を起動してEntity Frameworkパッケージをインストールする。
    再びC#でプロジェクトを開く。

    以上、よろしくお願い致します。

      補足日時:2015/10/02 08:37

A 回答 (6件)

.NETでデータベースを扱う方法には、古い(=原始的な)ものから順に


・DbCommand / DbConnection
・DataSet
・LINQ for SQL
・Entity Framework
があります。最新の Entity Framework でも、v4 から v6 は全く別物というくらいに変わっています。
個々のスキームには、それぞれ対応できる DB の種類や、VisualStudio の GUI レベルがあって、全ての状況であらゆるスキームが使用できるわけではありません。
(例えば Access MDB では Dataset までしか使えない、とか)

また、少しややこしいのは、アプリ開発に使われるデータ表示用のコントロール(これも世代的にいろい)が、DB スキームに自動的に結合されている場合があり、自由な組み合わせで使えない場合もあります。

結論としては、最新版の Visual Studio で、最新の Entity Framework を採用し、DB は SQL Server を使えば、最もエッジな開発環境が使えます。
基本的な CRUD 操作は、ほとんど SQL を書かずに実現できますし、トランザクションも宣言するだけです。
    • good
    • 0
この回答へのお礼

ありがとうございます。

内容が難しくてすべてがわかったわけではないですが、最新版のVisualStudioを使えば簡単にできますよ、ということがわかりました。
最新版のそれも有償のものは、手が出ないので今のところプログラムで作成するしかないようですね。

ありがとうございました。

お礼日時:2015/09/29 12:18

VS2010だと、EFは別途インストールしないと駄目ですよ


http://codezine.jp/article/detail/6470
下の方に「Expressの場合」が書いてあります。
    • good
    • 0
この回答へのお礼

確認してみます。
ありがとうございました。

お礼日時:2015/10/02 08:26

#1です



ちょと誤解があるようですが、Visual Stusio 2010 Express でも、Entity Framework は内蔵ですので問題なく使えます。LINQも、DataSetも、それを実現するためのGUI機能もぜんぶ標準装備です。
データベースも、無償のSQL Server 2008 Expressで全然問題ありません。

あと、Entity Frameworkを使った開発が「簡単か」といわれると、必ずしもそうではありません。
物事は何でも、原始的な方が最初はずっと楽に覚えれます。
ただ、複雑なものを作っていくと、Entity Framework のようなスキーマは、後で生産性が全然違ってくる、ということです。そのために開発されているのですから。

おっしゃっている、DbCommand / DbConnection を使ったデータベースアクセスは、大昔からあり、もっとも細かいレベルでデータベースを操作できる手段なので、今でも使われています。
でも、日常的な処理なら、今そきはもっと便利な道具がいっぱいあります。
ただし、それを習得するのは、それなりに骨が折れる、ということで。
    • good
    • 0
この回答へのお礼

すみません、Entity Framework とおっしゃっておられるのは、ツールを使って接続する方法のことでしょうか?
たぶん、そうだと思いますが、よくわかっておりません。
ただ、ツールを使ってサーバIPに接続することは、VS 2010 Expressでは、できないように思います。
ですので、プログラムで作成するしかないように考えています。

ありがとうございます。

お礼日時:2015/10/01 12:08

> VS 2015が既にリリースされているのですね。


> 本当は、有償版が欲しいところですが残念ですね。

Visual Studio Community の使用条件に当てはまらないのですか?
個人用なら誰でも使えますよ。
https://www.visualstudio.com/ja-jp/products/visu …

Community の機能は有償版の Professional そのまんまです。
    • good
    • 0
この回答へのお礼

ありがとう

ありがとうございます。

個人ではなくて、零細企業ですが会社で使います。
ただし5名より多いです。

厳密に考えれば、使用条件に当てはまらないことになってしまいます。
でも、Professonalバージョンと同じ機能とは驚きです。

とても魅力的です。

お礼日時:2015/09/30 13:38

>VisualStudio 2013 Communityは、expressバージョンと比べていかがなのでしょうか?


ごめんなさいVS2013しか使ったことないです。
たぶん同等以上のはずです。
なお、さっき検索したらVS2015 Communityが出ていて、こちらも無料です。
(VS2015 Communityで検索してください)
使用する条件は
•大学関係者
•非営利団体従事者
•オープン ソース開発者
•開発者5名以下の中小企業
です。
    • good
    • 0
この回答へのお礼

VS 2015が既にリリースされているのですね。
本当は、有償版が欲しいところですが残念ですね。

VS 2005 Proはあるのですが、ちょっと古いのでVS 2010 C# Express
を使っています。

色々、情報をありがとうございます。

お礼日時:2015/09/29 16:05

>最新版のそれも有償のものは、手が出ないので今のところプログラムで作成するしかないようですね。



Visual Studio 2013 Communityは無償ですよ。
私も使ってます。
どこまでの機能があるかはよくわかりませんが。
参考までに。
    • good
    • 0
この回答へのお礼

VisualStudio 2013 Communityは、expressバージョンと比べていかがなのでしょうか?
お使いになった感想で結構なのですが、教えて頂けないでしょうか?
同じかそれ以上ならば、DLします。

ありがとうございます。

お礼日時:2015/09/29 15:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!