[seasar-dotnet:2269] Quill、DBFluteでの同一DB、複数スキーマ、同一テーブル構造での接続について

志水正幸 [E-MAIL ADDRESS DELETED]
2013年 4月 25日 (木) 17:21:28 JST


志水と申します。

【環境】
開発OS:Windows7 64bit
DB-Server:Windows2008std

C# FrameWork4.0
Oracle11g
Quill(s2container.net-1.4.0)
DBFlute0.8.9.50
ソース元は、dfnet-asp.net-example

初めてQuill、DBFluteを利用させていただいております。
ASP.NET(WEB)、C#も初心者ですが、一応、Java経験者です。

下記の要件でWEBアプリを作成したく
初めてづくしですが、いろいろとネットで調べて実装してみました。
DBFluteやQuillの複数DB、スキーマについての説明も
読ませていただきました。はっきり言って難しいです。
あんまりよく理解できていないなりに、実装を行い、
何とか読込もできましたし、更新もできました。

しかしWEBで下記の要件を実装した場合に
多ユーザでの同時実行時に、トランザクション動作など、
はたして本当にこのような実装方法で問題ないのかが
はっきり言って理解不足で、投稿させていただいた次第です。
何か注意点や、より良い実装方法等あれば、ご教授お願いいたします。

<要件>
同じデータベースで、・スキーマが違い、同一テーブル構造を持つ
データベース環境に対して、アプリケーション側のログイン画面で
ログインしたユーザの所属からユーザ専用のスキーマへ接続する。
※スキーマ間のアクセスは行わない。

<DBFLUTE>
1.「dbflute_xxxxxx」で基本となるモジュールを一つだけ、generate.batで作
成する
2.A社用(dbflute_corpA)、B社用(dbflute_corpB)・・・・のスキーマを作成
3.databaseInfoMap.dfpropの接続先をA社用、B社用・・・と変更しながら
  replace-schema.batを実行して、各スキーマに実テーブルを作成する。

<aspx側>
・宣言
  Protected _dataSourceDict As SelectableDataSourceProxyWithDictionary
・ページロード
String corpcd = [画面データの会社コード]

DataSourceImpl ds = _dataSourceDict.DataSourceCollection["Dfxxxxxx"] as
TxDataSource;
ds.ConnectionString = "Data Source=XE ;User Id=user_" + corpcd +
";Password=pass_" + corpcd ;
・会社毎に専用スキーマに接続して、読込/更新などの処理を行う。
 DBFLUTEのモジュールは「dbflute_xxxxxx」を共通で使用する。










-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-dotnet/attachments/20130425/7edc6c85/attachment.html>


seasar-dotnet メーリングリストの案内