我尝试运行以下脚本,但始终收到NULL
错误。主键是ID
,它不包含在我的脚本中。
我不是表的所有者,因此我无法在Key文件夹中进行任何更改。
我还需要指出UserID
和EntityID
是Userpermissions
表中的外键。
如何使此脚本成功运行而没有任何NULL
或键约束错误?
INSERT INTO userpermissions (
UserID,
EntityID,
Applications,
Phone,
PhoneExt,
E_Mail,
UserTypeID,
InactiveDate,
ReviewDate)
VALUES( ( SELECT ID FROM Users AS UserID WHERE id = 710231),
( SELECT ID FROM Entity AS EntityID WHERE id = 2332448),
'31525197392643072' ,
'NULL' ,
'NULL' ,
'NULL' ,
2 ,
'NULL' ,
'NULL'
)
答案 0 :(得分:0)
就像两个子查询之一
( SELECT ID from Users as UserID where id = 710231), ( SELECT ID from Entity as EntityID where id = 2332448)
返回NULL
答案 1 :(得分:0)
我的猜测是您正在尝试将 string ''NULL'插入日期字段,该字段不接受非日期值。删除单引号:
INSERT INTO userpermissions (
UserID,
EntityID,
Applications,
Phone,
PhoneExt,
E_Mail,
UserTypeID,
InactiveDate,
ReviewDate)
VALUES( ( SELECT ID FROM Users AS UserID WHERE id = 710231),
( SELECT ID FROM Entity AS EntityID WHERE id = 2332448),
'31525197392643072' ,
NULL ,
NULL ,
NULL ,
2 ,
NULL ,
NULL
)
答案 2 :(得分:0)
我假设如果您提到为'NULL'
的列值不允许为空,请在NULL
周围删除“”,如果这些列允许为NULL,则无需放入“”。
表NULL不是值。某些东西不能为'='NULL
(id)
中的 PK列 Userpermissions
应该是递增值。
您需要设置它,否则,如果您有一个不可为空的列,且没有默认值,则不进行设置,否则将抛出错误。首先检查并设置自动增量。
要在SQL Server Management Studio中设置自动增量,请执行以下操作:
Design
中打开表格Properties
Indentity Specification
下,设置(Is Identity)=Yes
和Indentity Increment=1