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 子句中的列的更新

  • 不允许在 UPDATE 语句中出现 FROM 子句

如果将此选项设置为 Cursors,则相同的限制会生效,但只用于游标。如果游标打开时未设置为 FOR UPDATE 或 FOR READ ONLY,则数据库服务器会根据 SQL/2003 标准选择可更新。如果 ansi_update_constraints 选项设置为 Cursors 或 Strict,则包含 ORDER BY 子句的游标缺省为 FOR READ ONLY;否则,它们缺省为 FOR UPDATE。

另请参见