asp.net - Visual Studio 项目错误

标签 asp.net sql-server

这是我的表格,如图所示

enter image description here

这是我的插入存储过程

enter image description here

但是当我尝试在我的项目中执行它时,项目显示错误如下。

错误:

Cannot insert the value NULL into column 'SID', table 'AttDemo.dbo.StdMst'; column does not allow nulls. INSERT fails.
The statement has been terminated.

最佳答案

解决此问题的最简单方法是将主键设置为自动增量/作为身份。

或者,您可以更改此:

GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[STDMST_INSERT]

    @STDNAME AS NVARCHAR (50)
AS
BEGIN

    INSERT INTO (StdMst (StdName, EDate) VALUES(@STDNAME, GETDATE())

END
GO

对此:

GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[STDMST_INSERT]

    @STDNAME AS NVARCHAR (50)
AS
BEGIN

    INSERT INTO (StdMst (SID, StdName, EDate) VALUES(IDENT_CURRENT('StdMst'), @STDNAME, GETDATE())

END
GO

您遇到的问题是您的主键不允许 NULL 值并且未设置为自动增量。

以下是一些有用的链接:

Set Primary Key as Identity
Setting key to autoincrement

关于asp.net - Visual Studio 项目错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50955951/

相关文章:

c# - 检测页面刷新 jQuery 或 C# ASP.Net

asp.net - 使用 IIS 调试 ASP.NET

c# - 从通过单元测试项目调用的类库访问 App.Config 设置

asp.net - Visual Studio 2015、ASP.NET 5、MVC 6、Angular 2.0 - 异常 : Token must be defined

c# - 在存在触发器的情况下从 linq 到 sql 向 sql server 插入行时出错

sql-server - SQL Server : delete specific data, 忽略其余部分

sql-server - 如何优化执行时间过长的存储过程?

javascript - 避免 LinkedIn 收件人在连接消息中看到彼此的姓名和电子邮件地址

java - 执行 PreparedStatement 时得到 "jdbc.SQLServerException: Incorrect syntax near ' ,'"错误

sql - 如何将另外两列 INNER JOIN 加入到表中?