Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 创建主键_Sql Server - Fatal编程技术网

Sql server 创建主键

Sql server 创建主键,sql-server,Sql Server,我想知道我应该先在PK中放哪一列,[ID\u CHECK]或[ID\u CONTROL] CREATE TABLE QUALITY_CONTROL ( [ID_CHECK] [int] NULL, [ID_CONTROL] [int] NOT NULL ) ALTER TABLE QUALITY_CONTROL ADD CONSTRAINT QUALITY_CONTROL_P01 PRIMARY KEY ([ID_CHECK], [ID_CONTROL]) 或 [

我想知道我应该先在PK中放哪一列,[ID\u CHECK]或[ID\u CONTROL]

   CREATE TABLE QUALITY_CONTROL
(
    [ID_CHECK] [int] NULL,
    [ID_CONTROL] [int] NOT NULL

)

 ALTER TABLE QUALITY_CONTROL  ADD CONSTRAINT QUALITY_CONTROL_P01 PRIMARY KEY ([ID_CHECK], [ID_CONTROL])

[ID_CHECK]列有更多重复的数据,我不知道这是否意味着什么


谢谢。

数据是如何输入的?它通常是如何被查询的?IE是
select*from quality\u control,其中id\u check=@someid
一种常见的查询模式吗?感谢您的反馈。我真的不知道如何回答这些问题,你可以告诉我基本要点。谢谢。如果ID_检查有更多重复数据,以它开头的主键将不太有效,但是如果ID_控件很少用于识别(在<代码>连接<代码>的<代码>上的<代码>条件或<代码>中的<代码>条件)或订单(使用<代码>订单依据<代码>或<代码>分组依据<代码>子句)然后启动PK的数据几乎毫无意义。如果ID_控件的重复次数更少,引用频率更高,那么几乎可以肯定,用它开始键是最好的。在不知道典型用法的情况下,我们基本上只是猜测。这根本不起作用,因为
ID\u CHECK
允许
NULL
,因此不能成为
主键的一部分
@BillTür对不起,我把它放错了,[ID CHECK][int]不是NULL
  ALTER TABLE QUALITY_CONTROL
 ADD CONSTRAINT QUALITY_CONTROL_P01 PRIMARY KEY ([ID_CONTROL], [ID_CHECK])