primary key :索引,不重复,标识

解决方案 »

  1.   

    这种问题建议强烈楼主买本书看看!!!!!!!!!!!!!!
    PRIMARY KEY 约束
    表中经常有一个列或列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可强制表的实体完整性。当创建或更改表时可通过定义 PRIMARY KEY 约束来创建主键。一个表只能有一个 PRIMARY KEY 约束,而且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束确保唯一数据,所以经常用来定义标识列。当为表指定 PRIMARY KEY 约束时,Microsoft® SQL Server™ 2000 通过为主键列创建唯一索引强制数据的唯一性。当在查询中使用主键时,该索引还可用来对数据进行快速访问。如果 PRIMARY KEY 约束定义在不止一列上,则一列中的值可以重复,但 PRIMARY KEY 约束定义中的所有列的组合的值必须唯一。如下图所示,titleauthor 表中的 au_id 和 title_id 列组成该表的组合 PRIMARY KEY 约束,以确保 au_id 和 title_id 的组合唯一。当进行联接时,PRIMARY KEY 约束将一个表与另一个表相联。例如,若要确定作者与书名的对应关系,可以使用 authors 表、titles 表和 titleauthor 表的三向联接。因为 titleauthor 包含 au_id 和 title_id 两列,对 titles 表的访问可由 titleauthor 和 titles 之间的关联进行。
      

  2.   

    补充楼上的:
        约束可以分为五类:
        PRIMARY KEY约束(对于那些其值能唯一标识表中的行或一组定义primary key约束,这些列被称为主键列,主键列不能为null)
        
        UNIQUE约束(忘----------------------记了)
        
        FOREIGN KEY约束(如果一个表的数据依赖于另一个表的数据,那么你可以通过foreign key约束来避免这两个表中的数据不一致)
        
        CHECK约束(check约束通过限制列中插入的值来实施域完整性。可以在单列上定义多个check约束,以他们的定义顺序来求值。如果在表层上定意了单个check约束,那么他可以应用于多列)
        
        DEFAULT约束(忘----------------------记了)
      

  3.   

    定义主键
    定义主键来强制不允许空值的指定列中输入值的唯一性。如果在数据库中为表定义了主键,则可将该表与其它表相关,从而减少冗余数据。表只能有一个主键。 定义主键 在数据库关系图或表设计器中,单击要定义为主键的数据库列的行选择器。若要选择多个列,请按住 CTRL 键同时单击其它列的行选择器。
    右击列的行选择器,然后选择"设置主键"命令。将自动创建一个名为"PK_"且后跟表名的主键索引;可在属性页的"索引/键"选项卡上找到该索引。 
    警告   如果要重新定义主键,则必须先删除任何与现有主键相关的关系才能创建新主键。将出现一条信息,警告您作为该过程的一部分,将自动删除现有关系。行选择器上的主键符号  用于标识一个主键列。如果主键包含不止一列,则在一列中允许有重复值,但主键中所有列值的每个组合必须唯一。如果定义复合键,主键中的列顺序将与关系图中的表所显示的列顺序相匹配。不过,可以在创建主键后更改列的顺序。有关更多信息,请参见修改主键。