Sybase
使用 CHECK 創建使用者定義類型
在 PostgreSQL 中,可以通過執行以下操作創建具有隱式 CHECK 的使用者定義類型:
CREATE DOMAIN OrdinalT AS INTEGER CHECK (value >= 0);
在 Sybase ASE 15.7 中,我發現以下內容幾乎是等效的(除了 CHECK):
sp_addtype OrdinalT, "INTEGER";
如何使 CHECK 成為 Sybase 中使用者定義類型定義的一部分?
您不能在語法上將檢查條件作為類型定義的一部分,但您可以創建規則:
CREATE RULE OrdinalTRule AS @value >= 0
並將其綁定到數據類型:
sp_bindrule OrdinalTRule, OrdinalT
為了稍後修改規則,您必須刪除並重新創建它。在被刪除之前,規則必須是unbound:
sp_unbindrule OrdinalT
請注意,最後一條語句中的參數不是規則本身,而是規則綁定到的類型。