错误提示信息:
SQL SERVER 无法将NULL值插入列UserID,表UserInfo中该列不能为空,INSERT 失败……
过程“DT_ADDUSER”试图返回状态值NULL,但不允许这样做。将改为返回状态值0
错误原因:
UserInfo.UserID列不允许插入空值。在存储过程中需要一个返回值,但在执行过程中却没有生成一个值,从而返回NULL值导致此错误。
解决方法:
将UserInfo.UserID列设置为关键字,然后如图所示处理:
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
存储过程内容参考:
CREATE PROCEDURE [DT_ADDUSER]
(
@UserName char(10),
@UserSex bit,
@UserContent varchar(500)
)
AS
Insert Into [UserInfos]
(
[UserName],
[UserSex],
[UserContent]
)
Values
(
@UserName,
@UserSex,
@UserContent
)
return @@IDENTITY --------返回最新插入的ID编号
相关问题:
当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'gczczbb' 中的标识列插入显式值
方法:SET IDENTITY_INSERT 表名 ON
下面是实际中碰到的问题: