我目前只有两个表,因为我正在学习,第一列是Book_skey,这是由系统使用IDENTITY函数自动生成的,但是我想在第二列中创建自动化字段名为BookRef,其中第一行将是B00000001,下一行将是B00000002等。
USE Occupancy
DECLARE @BookNumber INT
SET @BookNumber = 1
WHILE @BookNumber <= 5000
BEGIN
INSERT INTO Book(BookNumber)
SELECT @BookNumber
SET @BookNumber = @BookNumber + 1
END
可以这样做吗?
由于
Wayne
答案 0 :(得分:0)
您只需要使用计算列。
CREATE TABLE Book (
Book_skey int IDENTITY(1,1)
,BookRef as ('B' + RIGHT(CONVERT(CHAR(9), (100000000 + BookNumber)),8))
,BookNumber int
)
SET NOCOUNT ON
DECLARE @BookNumber INT
SET @BookNumber = 1
WHILE @BookNumber <= 5000
BEGIN
INSERT INTO Book(BookNumber)
SELECT @BookNumber
SET @BookNumber = @BookNumber + 1
END
SELECT * FROM Book