Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » データベースの設定 » データベース・オプション » データベース・オプションの概要 » アルファベット順のオプション・リスト

 

ansi_update_constraints オプション [互換性]

更新可能な範囲を制御します。

指定可能な値

Off、Cursors、Strict

デフォルト

Cursors

備考

SQL Anywhere には、ANSI SQL 規格では許可されていない更新が可能な言語拡張機能がいくつか含まれています。これらの言語拡張機能を利用して、強力かつ効率的に更新を行うことができます。ただし、直感的に予期しない動作が起きる場合もあります。ユーザのアプリケーションがこれらの言語拡張機能の動作を予期して設計されていない場合、この動作によって、更新内容の消失などの異常事態が発生することがあります。

ansi_update_constraints では、更新を SQL/2003 規格で許可される内容に限定するかどうかを制御します。

このオプションを Strict に設定すると、次の更新は許可されません。

  • JOINS を含んだカーソルの更新

  • ORDER BY 句に表示されるカラムの更新

  • FROM 句は、UPDATE 文では使用できません。

このオプションを Cursors に設定した場合は、カーソルにだけ同じ制限が加えられます。カーソルが FOR UPDATE または FOR READ ONLY で開かれていない場合は、データベース・サーバは SQL/2003 規格に基づいて、更新可能かどうかを選択します。ansi_update_constraints オプションが Cursors または Strict の場合、ORDER BY 句を含むカーソルは、デフォルトの FOR READ ONLY になります。それ以外の場合は、引き続きデフォルトの FOR UPDATE になります。

参照