SQL Anywhere 支持那些允许在数据类型定义中封装约束和缺省定义的域。它还支持在 CREATE TABLE 语句中使用显式缺省值和 CHECK 条件。但是,它不支持命名的缺省值。
SQL Anywhere 和 Adaptive Server Enterprise 在处理 NULL 的某些方面存在差异。在 Adaptive Server Enterprise 中,有时将 NULL 视为一个值处理。
例如,Adaptive Server Enterprise 中的唯一索引不能包含具有空值的行,而在其它方面都相同。在 SQL Anywhere 中,唯一索引则可以包含这样的行。
缺省情况下,Adaptive Server Enterprise 中的列缺省为 NOT NULL,而 SQL Anywhere 中的缺省设置为 NULL。您可以使用 allow_nulls_by_default 选项控制此设置。通过显式指定 NULL 或 NOT NULL,可以使您的数据定义语句成为可移植的语句。
有关此选项的信息,请参见为实现 Transact-SQL 兼容性设置选项。
您可以通过在 CREATE TABLE 语句中的表名前放置井号 (#) 来创建临时表。这些临时表是 SQL Anywhere 声明的临时表,并且只能在当前连接中才可用。
在 Adaptive Server Enterprise 中表的实际放置方式不同于在 SQL Anywhere 中表的实际放置方式。SQL Anywhere 支持 ON segment-name 子句,但 segment-name 会引用 SQL Anywhere dbspace。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |