使用SEQUENCE SQL创建下一个ID

时间:2016-02-17 14:27:10

标签: sql sql-server tsql

所以这是视图

CREATE VIEW [worksheet01].[vw.product]
AS
    SELECT *
    FROM [worksheet01].[tbl_products]
GO

所以这是我的序列

CREATE SEQUENCE [worksheet01].[seq_productId]
START WITH 10
INCREMENT BY 1
CACHE 20;

这是我的Insert声明

INSERT INTO [worksheet01].[vw.product] (product_id, product_name, unit_price)
VALUES (([worksheet01].[seq_productId].NEXTVAL), 'Samsung Tab 10', '500')

我收到错误

  

多部分标识符" worksheet01.seq_productId.NEXTVAL"无法绑定

有人可以解释我做错了吗?

1 个答案:

答案 0 :(得分:4)

你真的很亲密。只需将插入更改为:

INSERT INTO [worksheet01].[vw.product]
    (product_id,product_name, unit_price)
VALUES (NEXT VALUE FOR [worksheet01].seq_productID,'Samsung Tab 10', '500')