Symfoware ServerのODBC連携でRDA-SV接続の場合に、SELECT文にFOR UPDATE句が自動的に付加されてしまう現象について
Symfoware Server (Native Interface)のよくあるご質問を検索できます。
Symfoware Server の技術情報はこちら
- VisualBasicとADOを用いたアプリケーションでRDA-SV接続する場合、SELECT文を実行すると、FOR UPDATE句を付けていないのに、アクセスプランを確認するとFOR UPDATE句が付加されています。原因と対処方法を教えてください。
- [原因]
RDA-SV接続の場合、ODBC連携では、カーソルオプションのSQL_ATTR_CONCURRENCYに、SQL_CONCUR_READ_ONLYとSQL_CONCUR_LOCKのいずれでもない値が設定された場合は、SQL_CONCUR_LOCKに置換します。その結果、SELECT文にFOR UPDATE句が付加されます。
[対処方法]
これを回避するには、SQL_ATTR_CONCURRENCYにSQL_CONCUR_READ_ONLYを設定します。
VisualBasicとADOを用いているアプリケーションでこの回避手段をとるには、該当SQLを指定しているRecordsetのLockTypeプロパティにadLockReadOnlyを設定します。
製品・サービス区分 | Symfoware | ||||
---|---|---|---|---|---|
製品・サービス情報 |
|
||||
アンサー種別 | 技術サポート |