我正在尝试运行以下脚本,但是失败了,我不知道为什么:
DROP TABLE table;
CREATE SEQUENCE seq START WITH 0;
CREATE TABLE table (
id VARCHAR(512) PRIMARY KEY AS ('0000000000' + CAST(NEXT VALUE FOR seq AS VARCHAR(512)), 10),
field VARCHAR(512),
field VARCHAR(512)
);
我想将数字强制转换为字符串,以匹配代码其他部分的要求
答案 0 :(得分:4)
另一种方法呢?只需在表中使用identity
列即可。然后添加一个生成的列来提供您的字符串表示形式:
CREATE TABLE t (
t_id int identity(1, 1) primary key,
t_id_str as (right('0000000000' + CAST(t_id AS VARCHAR(512)), 10))
);