sqlite 如何实现属性ID以指定字母开头的检查约束?

jdg4fx2g  于 2023-05-29  发布在  SQLite
关注(0)|答案(1)|浏览(124)

我希望我的属性ID以字母AB开头,后跟8个整数。如果我想让它以定义好的字母开头和结尾,我该怎么做呢?

CREATE TABLE Table(
    ID TEXT NOT NULL 
        PRIMARY KEY 
        CHECK (ID LIKE AB________')
);
sqserrrh

sqserrrh1#

使用GLOB运算符:

CHECK (ID GLOB 'AB[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')

参见demo
或者:

CHECK (ID GLOB 'AB' || REPLACE(HEX(ZEROBLOB(8)), '00', '[0-9]'))

参见demo

相关问题