小编Ste*_*tes的帖子

当列已为NOT NULL时,无法在可为空的列上定义PRIMARY KEY约束

我有一个表称为Cases具有约访谈如信息IV_DateIV_LengthInterviewer等我也有内的字段Cases被称为Case_Code(A varchar),它是一个六字符(三个字母+三个数字)标识符; 例如“ ABC123”或“ ZZZ999”。ContactID(an int)上有一个外键,它指向一个Contact表。我创建了一个计算列,它是此Cases表的PRIMARY KEY ,称为CaseIDCaseID仅仅是的串联Case_CodeContactID。因此,ContactID为案例“ ZZZ99925”工作的“ 25”被指定CaseID为“ ZZZ99925”。既不Case_Code也不ContactID接受null,因此CaseID显然不接受。设置时CaseID我将其创建为NOT NULL,PRIMARY KEY,并使用了公式“ [Case_Code] + CONVERT([varchar],[contactID],0)”。我以为一切都很好,但是当我尝试重新排列SQL Studio表设计视图中的任何字段时,会抛出此错误:

'Cases (dbo)' table
- Unable to create index 'PK_Cases_1'.  
Cannot define PRIMARY KEY constraint on nullable column in table 'Cases'.
Could not create …
Run Code Online (Sandbox Code Playgroud)

sql database sql-server

5
推荐指数
2
解决办法
3万
查看次数

标签 统计

database ×1

sql ×1

sql-server ×1