[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: JDBCでロック。




ひがです。

> JDBC のコーディングとしては、autoCommit を false にして、
> 明示的なトランザクションを書けばよいのですが、
> JDBC-ODBC ブリッジで Access のエンジンがどういう挙動をするかは
> やってみないとなんとも言えません。

JDBC-ODBCは、autoCommitをfalseにすると、
挙動不審になることがあります(^^;)。
> 
> >プログラムからJDBCに対して、あるデータにロックをかけろという命令を
> >発行すると、DBのあるデータはロック解除命令が発行されるまで、書き換え
> >禁止となるようなものを作りたいのですが・・・
> 
JDBCそのものには、ロック専用のメソッドはないので、
データベース固有のロックコマンドを発行することに
なります。
Accessは、行単位のロックはできません。Oracle,SQL Anywhereなどでは
可能です。

> 使ったことがある訳ではありませんが、Sybase SQL Anywhere なんかはどうですか?
> 比嘉さんの『JDBCコンポーネントプログラミング』に試用版がついています。
> 
SQL Anywhereは、軽くて使いやすいデータベースなので
お勧めですが、JDBC-ODBC経由のアクセスになってしまうので、
複数行を更新しながらロックして、まとめてコミットするような
場合には向きません。
ロックといってもいろいろありますから、
どんなロックが必要なのかが分からないと
適したデータベースも分かりません。

http://www.freepage.total.co.jp/jfriends/dbcompo.html
(Java互助会)にデータベース対応コンポーネントがありますから、
それを使うとプロパティの設定だけで、プログラムが作れます。
--
Yasuo Higa <higa@xxxxxxxxxx>
INFORMATION SERVICES INTERNATIONAL - DENTSU, LTD.
Financial Systems Consulting Department
Tel(03)3980-2511 Fax(03)3980-2170