create table 语句中的 Informix 约束 SQL 语法

Informix constraint SQL syntax in create table statements

注意到 Informix 数据库上的模式已更改,用于检查创建 table 语句中的约束。如果字段名称、数据类型等没有其他差异,这对我的应用程序 read/write 到此 table 会是一个问题吗?

原文示例: 检查 (cs_addl IN ('y' ,'n' )),

新架构示例: 检查 (cs_addl IN ('y' ,'n' )) 约束 "informix".cs_check4,

TL;DR — 没有问题,行为也没有变化。

与标准 SQL 相比,约束名称出现在 'wrong' 位置,但这对约束的行为没有影响。 (您可以在 GitHub — SQL SQL-92, SQL-99, SQL-2003 规范中找到更多信息)。如果您需要删除或禁用约束,它只会为您提供更方便的名称。

即使是 NOT NULL 约束也正式有名称;如果您(像其他人一样)不命名,系统会为您创建一个名称。