MS Accessの取扱い
- 基本情報
- データベース接続設定
- データ型マッピング
- 主キーでの自動採番
- ページング検索の条件
- 更新ロックの取得
- プロシージャ
- データベース依存機能
- DBMS独自の注意点
- Exampleのススメ
- DBFlute内部での取扱い
- MS Access補足資料
基本情報
- 対応バージョン
- MS Access 2000 以上
- JDBCドライバの同梱
- なし
- (推奨)JDBCドライバ
- SUN JDK内のもの (Exampleで利用)
DBFluteの MS Access 対応は、(正式サポートではない)準サポートです。
データベース接続設定
データベース接続設定(databaseInfoMap.dfprop)について。
接続設定の仕様 @databaseInfoMap.dfprop
map:{
; driver = sun.jdbc.odbc.JdbcOdbcDriver
; url = jdbc:odbc:[dbname]
; schema =
; user =
; password =
}
- catalog はそもそも対応する概念がないため設定不要
- schema はそもそも対応する概念がないため設定不要
- [xxx]の[]は単なる表現上(ドキュメント上)の囲み
以下、実際のExampleプロジェクトでの設定例です。
e.g. dbflute-msaccess-exampleの場合 {dbname=exampledb} @databaseInfoMap.dfprop
map:{
; driver = sun.jdbc.odbc.JdbcOdbcDriver
; url = jdbc:odbc:exampledb
; schema =
; user =
; password =
}
データ型マッピング
TODO jflute now writing
主キーでの自動採番
TODO jflute now writing
ページング検索の条件
TODO jflute now writing
更新ロックの取得
ConditionBeanでは、MS-Accessにおける更新ロックの取得はサポートされていません。
プロシージャ
*未検証
データベース依存機能
データベース依存機能を有効にした場合の利用可能な機能について。
MS Accessに関しては特になし
DBMS独自の注意点
nullsFirst/Last
nulls first/last 構文をサポートしていないため、case when 構文を使って nullsFirst/Last を実現しています。union 句での case when 構文がサポートされないため、UnionQuery と nullsFirst/Last を合わせてることはできません。 (また、パフォーマンス上の懸念が多少あるので、大量データのときには注意して下さい)
ConditionBeanがほぼ全滅
left outer joinの構文が特殊で、ConditionBean の機能の多くが利用できません。外だしSQLを中心に利用することをお奨めします。
Exampleのススメ
MS Access を使ったExample実装 dbflute-msaccess-example があります。
DBFlute内部での取扱い
DBFlute内部でどのようにMS Accessと付き合っているか、特殊なパターンを挙げます。 将来的に同じ状況・同じ方法かどうかは保証されませんので、ここに書かれることに依存した利用はしないようにして下さい。 (DBFluteを深く理解するためのドキュメントと思って下さい)
TODO jflute now writing
MS Access補足資料
TODO jflute now writing