我正在创建一个发票表,我希望ID以零开始,因为我最终会将发票#与保持不变的varchar连接起来。例如,到目前为止,这是我的桌子:
create table MCE_IDTest_av
(
invoice_id_num int not null Identity(100076,1) primary key,
invoice_id as ('MCE' + CONVERT(varchar, invoice_id_num)),
);invoice_id将被列为"MCE100077“、"MCE100078”等,但是,我希望它是"MCE0010076"。是否有以零开头的SQL数字数据类型?
发布于 2018-09-21 15:44:56
这是没有数据类型,将垫领先的0。这种类型的事情必须用字符数据类型来完成。但你可以很容易地做到这一点。
另外,请确保始终指定varchar数据的长度。https://sqlblog.org/2009/10/09/bad-habits-to-kick-declaring-varchar-without-length
create table MCE_IDTest_av(
invoice_id_num int not null Identity(100076,1) primary key,
invoice_id as ('MCE' + right('00000000' + CONVERT(varchar(10), invoice_id_num), 7)),
);https://stackoverflow.com/questions/52447114
复制相似问题