- PR -

.NETFramework向けのO/Rマッピングツール

1
投稿者投稿内容
未記入
会議室デビュー日: 2005/11/03
投稿数: 2
投稿日時: 2005-11-03 21:10
掲題の件について質問があります。

現在、システムの開発でO/Rマッピングツールを使用するかどうかを検討しています。
@ITでも『NHibernate』『iBATIS.NET』の記事があったと思いますが、
読んでいるうちに、ふとした疑問が出てきました。

iBATIS.NET編にだけ
引用:

 ただし、SQL Server、OLE DB、ODBC以外のデータベースを利用する場合には、別途、データベース専用の接続プロバイダ(.NETデータ・プロバイダ)が必要になるので、注意してほしい。


という文章がありましたが、NHibernateではデータベース専用の接続プロバイダは
必要無いということでしょうか?

というのは、顧客により使用するデータベースが異なる場合があるのです。
システム自体は同じなのですが、客先での標準化としてDBベンダが
固定されていたり、金額的な問題で別のシステムと同じDBを使用したりと、
理由はさまざまです。

そういった経緯もあり、O/Rマッピングツールを使用すれば、
DB固有のSQL方言をある程度吸収できるのではないかという事です。

そして欲張りなもので、JavaのType4のJDBCドライバの様に
ユーザの実行環境にデータベースクライアントをインストールする事なく、
特定のDLL(JavaだとJarファイル)をコピーするだけで接続できるように
ならないかという事もあります。

たつごろー
ぬし
会議室デビュー日: 2004/10/25
投稿数: 496
投稿日時: 2005-11-04 10:27
引用:

DB固有のSQL方言をある程度吸収できるのではないかという事です。


SQLの違いを吸収したいだけなら、他の手段でも可能だと思いますよ。

お勧めのページ
おぎわらさんのサイト
.NETでDBを扱う場合の考え方
http://blogs.yahoo.co.jp/ogiwara_hsk/10695409.html

ちなみに、私は以前はドメインモデルを使っていましたが、今は
テーブルモジュールを使っています。

_________________
たつごろー
codeseek
こみゅぷらす
未記入
会議室デビュー日: 2005/11/03
投稿数: 2
投稿日時: 2005-11-05 11:37
厳密にはSQLの違いのみを吸収したいのではなく、
システム側でプログラムを変更したり、
ユーザがDBクライアントをインストールせずに、
プログラムは単純にHDD内にコピーするだけにして、
後はDBサーバのホスト名なり接続文字列をしていするだけで動作するように
したいのです。

なので、SQLだけの問題なら、対応するDBMSを例えば
Oracle,SQLServer,DB2などと限定してしまえばどうにかなります。

しかし、.NETからだとSQLServer以外はそれぞれのDBクライアントを
ユーザに入れてもらわないといけないので、これが面倒なのです。

基本的にはパッケージ商品ですので、ユーザにCD-ROMとマニュアルを渡した後は、
何もサポートはしません。(保守契約や導入作業込みの契約なら別ですが)

今、このDBMSの問題で検討段階にあるのは、
・サードパーティ製のODBCドライバを使用する(DBクライアントの必要が無いもの)
・インストールプログラム作成用のツールでどうにかできないか
という感じです。

これとは別にSQLの問題についてO/Rマッピングを検討していたのですが、
この段階で既に書いたような記事が目に留まり、
O/RマッピングツールでSQLの問題とDBクライアントも問題が両方解決するなら、
一石二鳥ではないかと考えた訳です。
1

スキルアップ/キャリアアップ(JOB@IT)