DBFlute -- PostgreSQLのSchema対応(案)

Schema:Aaa -- Table:Xxx, Yyy
Schema:Bbb -- Table:Zzz

databaseInfoMap.dfpropにて以下のように指定
schema = Aaa/Bbb

Xxx -- Table名を“Aaa.Xxx”として扱う。
Yyy -- Table名を“Aaa.Yyy”として扱う。
Zzz -- Table名を“Bbb.Zzz”として扱う。

EntityのTABLE-Annoationが上記のTable名であればS2DaoでDBアクセス可能。
ConditionBeanにおいても上記のTable名を利用する。

★Schemaの指定方法は、JDBCでの取得の仕方次第なので要検討
全く別のPropertyとして指定する可能性あり


別Schema同名Tableの扱いに関して

A. Aaa.Xxx → AaaXxx
B. Aaa.Xxx → [任意のPrefix]Xxxx

{A}は単純だが、Schema名にClass名が依存するのもどうかと
{B}は面倒だが、利用者がきっちり指定して好きなPrefixを付ける。

ちなみにDirectoryを分ける方法は、
「修正作業の影響範囲が大きすぎる」
「Class名は回避できてもDicon上のComponent名が解決しない」
のため、どちらかというとClass名にPrefixを付ける方法を採用すべきと判断。


ちなみにPostgreSQLだけでなくSQLServerにおいても同様のことが言えるかもしれない。


ざっと見積もり、24時間は必要。
うーむー。。。どこで時間とろう...

第1段階:Schema対応
第2段階:別Schema同名Tableの扱い

という感じでフェーズ分けします。



C#版は保留(声小さく)