
C#もデータベースプログラミングも初心者です。
C言語にて組込みファームウェアを開発していましたので、Windowsアプリは素人です。
そこで、現在VisualStudio 2010 C# Expressにてデータベースプログラミングを勉強している
のですが、データベースサーバーに接続する方法として、プログラムにで接続する方法と
VisualStudioのツールを使ってデータベース接続する方法があるように思います。
複数のリモートサーバーに接続する必要がある場合は、どちらを選択すべきでしょうか?
プログラムにて接続する場合は、con.open();やコネクションを作成してトランザクション
を設定したりしなくてはならないようです。
もし、VisualStudioを使えば、このあたりのプログラムを書く必要がないように思います。
アドバイスを頂けたらうれしく思います。
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
.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 を書かずに実現できますし、トランザクションも宣言するだけです。
ありがとうございます。
内容が難しくてすべてがわかったわけではないですが、最新版のVisualStudioを使えば簡単にできますよ、ということがわかりました。
最新版のそれも有償のものは、手が出ないので今のところプログラムで作成するしかないようですね。
ありがとうございました。
No.6
- 回答日時:
No.5
- 回答日時:
#1です
ちょと誤解があるようですが、Visual Stusio 2010 Express でも、Entity Framework は内蔵ですので問題なく使えます。LINQも、DataSetも、それを実現するためのGUI機能もぜんぶ標準装備です。
データベースも、無償のSQL Server 2008 Expressで全然問題ありません。
あと、Entity Frameworkを使った開発が「簡単か」といわれると、必ずしもそうではありません。
物事は何でも、原始的な方が最初はずっと楽に覚えれます。
ただ、複雑なものを作っていくと、Entity Framework のようなスキーマは、後で生産性が全然違ってくる、ということです。そのために開発されているのですから。
おっしゃっている、DbCommand / DbConnection を使ったデータベースアクセスは、大昔からあり、もっとも細かいレベルでデータベースを操作できる手段なので、今でも使われています。
でも、日常的な処理なら、今そきはもっと便利な道具がいっぱいあります。
ただし、それを習得するのは、それなりに骨が折れる、ということで。
すみません、Entity Framework とおっしゃっておられるのは、ツールを使って接続する方法のことでしょうか?
たぶん、そうだと思いますが、よくわかっておりません。
ただ、ツールを使ってサーバIPに接続することは、VS 2010 Expressでは、できないように思います。
ですので、プログラムで作成するしかないように考えています。
ありがとうございます。
No.4
- 回答日時:
> VS 2015が既にリリースされているのですね。
> 本当は、有償版が欲しいところですが残念ですね。
Visual Studio Community の使用条件に当てはまらないのですか?
個人用なら誰でも使えますよ。
https://www.visualstudio.com/ja-jp/products/visu …
Community の機能は有償版の Professional そのまんまです。
ありがとうございます。
個人ではなくて、零細企業ですが会社で使います。
ただし5名より多いです。
厳密に考えれば、使用条件に当てはまらないことになってしまいます。
でも、Professonalバージョンと同じ機能とは驚きです。
とても魅力的です。
No.3
- 回答日時:
>VisualStudio 2013 Communityは、expressバージョンと比べていかがなのでしょうか?
ごめんなさいVS2013しか使ったことないです。
たぶん同等以上のはずです。
なお、さっき検索したらVS2015 Communityが出ていて、こちらも無料です。
(VS2015 Communityで検索してください)
使用する条件は
•大学関係者
•非営利団体従事者
•オープン ソース開発者
•開発者5名以下の中小企業
です。
VS 2015が既にリリースされているのですね。
本当は、有償版が欲しいところですが残念ですね。
VS 2005 Proはあるのですが、ちょっと古いのでVS 2010 C# Express
を使っています。
色々、情報をありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Replace関数について教えて...
-
CSSが全く分かりません、お助け...
-
CPUが16bitでも32bitOSでコンパ...
-
最初に聞かれたこと
-
c言語の問題の説明、各所ごとに
-
Cのオブジェクトファイルの逆ア...
-
C言語 関数、変数の宣言について
-
C言語について。
-
C言語でファクト関数を使わずに...
-
プログラミング 素数か素数では...
-
あってる
-
DNCL(共テ用プログラミング言語...
-
int16_t の _t は何?
-
DLLファイルの逆コンパイラにつ...
-
visual studio 2022でのC#プロ...
-
プログラミングc++を全く分か...
-
DNCL(共テ用プログラミング言語...
-
C言語 配列と関数の練習問題
-
gccを行ってもexeファイルが生...
-
C言語 列挙型(enum型)変数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
OracleInProcServer.XOraSessio...
-
データベース接続/切断の基本的...
-
c#のTLS1.2での通信について
-
ConnectNamedPipeの接続待ち
-
Oracle 10g standardへのJDBC接...
-
System.Net.Sockets.SocketExce...
-
c/sゲーム制作でのサーバーにつ...
-
●Excel VBAからSQLServerのデー...
-
DataAdapterだけじゃダメ?
-
Active Directory接続エラーに...
-
.NETでodbc接続したい。
-
FFFTPでファイル一覧を取得でき...
-
Delphi でOracleのデータを表示...
-
ソケット通信について
-
ローカル側のC#から、リモート...
-
Visual Studio 2005 Oracle
-
ASP.NETのパフォーマンスと接続...
-
Android端末から外部DB(MYSQL...
-
windows 2008 server にiisをイ...
-
LAN上のmdbのプロテクト
おすすめ情報
教えて頂いたEFのためのURLからVS2010Expressの場合という箇所を見つけました。
しかし、よくわかりません。
プロジェクトを作成するのは、通常のフォームアプリプロジェクトのことでしょうか?
また、Visual Web Developer 2010 は、どこから起動するのでしょうか?
VS2010Expressから起動するわけではないように思いますので、探してみます。
Visual C#でプロジェクトを作成して閉じる。
Visual Web Developer 2010を起動してEntity Frameworkパッケージをインストールする。
再びC#でプロジェクトを開く。
以上、よろしくお願い致します。