我在数据库表中有11列,我在其中10列中插入数据。我希望在第11列中有一个像“1101等”的唯一编号。 知道我该怎么办?提前谢谢。
答案 0 :(得分:1)
SQL Server 2012及更高版本,您可以生成Sequence
Create SEQUENCE RandomSeq
start with 1001
increment by 1
Go
Insert into YourTable(Id,col1...)
Select NEXT VALUE FOR RandomSeq,col1....
或者您可以使用Identity
Identity(seed,increment)
您可以从1101开始种子并将序列递增1
Create table YourTable
(
id INT IDENTITY(1101,1),
Col varchar(10)
)
答案 1 :(得分:0)
如果要在其他字段中包含该唯一编号,则可以使用主键操作该字段并插入该值。
如果您想要主键值,请在设计模式下打开表格,转到“身份规范”,根据需要设置“身份增量”和“身份种子”。
或者,您可以使用表格脚本,
CREATE TABLE Persons
(
ID int IDENTITY(12,1) PRIMARY KEY,
FName varchar(255) NOT NULL,
)
此处主键将从12开始播种,种子值将为1。
答案 2 :(得分:0)
如果您的表定义已经到位,则可以更改列并添加标记为持久的Computed列:
ALTER TABLE tablename drop column column11;
ALTER TABLE tablename add column11 as '11'
+right('000000'+cast(ID as varchar(10)), 2) PERSISTED ;
--You can change the right operator value from 2 to any as per the requirements.
--Also replace ID with the identity column in your table.
答案 3 :(得分:0)
create table inc
(
id int identity(1100,1),
somec char
)