我正在使用SQL处理一个现有的表。我必须在这个表格中插入以下数据。这是一个家庭作业问题!下面是问题和我的代码。我一直得到以下error.....Cannot,将值NULL插入到'ProductID‘列中,表'jc0541535.dbo.Products';列不允许空。插入失败。如何使这个ProductId自动生成?
<这是我使用的代码,但它不能正常工作。有人能指出原因吗。
在产品中插入(ProductID、CategoryID、ProductCode、ProductName、Description、ListPrice、DiscountPercent、DateAdded)值(默认值为4,' DGX _ 640 ','Yamaha DGX 640 88-Key Digital Piano','Long description to来袭‘,799.99,0,CURRENT_TIMESTAMP);
发布于 2013-09-22 21:52:58
不要使用DEFAULT --只需从insert语句中删除该列:
INSERT INTO Products (CategoryID,ProductCode,ProductName,Description,ListPrice,DiscountPercent ,DateAdded)
VALUES(4,'dgx_640','Yamaha DGX 640 88-Key Digital Piano', 'Long description to come.',799.99,0,CURRENT_TIMESTAMP);SQL Fiddle演示
另外,正如其他人所说的,确保列是IDENTITY。
发布于 2013-09-22 21:51:18
检查中的列属性。确保将ProductID的"Is Identity“设置为'Yes‘,并将"Identity Increment”设置为1。
发布于 2013-09-22 21:52:38
在设计中,单击列产品id ->列属性->查找标识规范-> Identity种子,然后增加1(或任何期望的值),并将(Is标识)设置为yes/true。
https://stackoverflow.com/questions/18949102
复制相似问题