Ultra Light を isolation_level 0 (read_uncommitted) で操作すると、次の影響が生じることがあります。
アプリケーションは、コミットされていないデータを読み込むことができます (ダーティリード)。このシナリオでは、コミットされていないデータベースのローにトランザクションがアクセスできるため、別のトランザクションによりロールバックされる可能性があります。これにより幻ローが発生します。幻ローとは元のクエリの後に追加されたローのことで、これにより、繰り返されて重複したクエリで返された結果セットの内容に相違が生じます。
ダーティリードの影響を示すチュートリアルについては、チュートリアル:ダーティリードの知識を参照してください。
幻ローを示すチュートリアルについては、チュートリアル:幻ローの知識を参照してください。
アプリケーションは、繰り返し不可能読み出しを実行できます。このシナリオでは、アプリケーションがデータベースからローを読み出し、他の操作の実行に移ります。そこへ、別のアプリケーションがローの更新や削除を行い、変更をコミットします。最初のアプリケーションが元のローを再度読み出すと、更新された情報が取得されるか、元のローが削除されたことを発見します。
繰り返し不可能読み出しの影響を示すチュートリアルについては、チュートリアル:繰り返し不可能読み出しの知識を参照してください。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |