• MySql -- primary key主键约束


    4、primary key主键约束

    在一张表中:

    1) 主键约束是 NOT NULL、UNIQUE唯一的记录。

    2) 主键约束必须是唯一的值。

    3) 主键约束列不能包含 NULL 值。

    注意:每个表都应该有一个主键,并且每个表只能有一个主键。

    -- 我们创建一张表
    CREATE TABLE `test`.`info2`(  
      `id` INT(11) NOT NULL,
      `idCard` VARCHAR(18) NOT NULL, 
      `mobile` VARCHAR(11)
    ) ENGINE=INNODB CHARSET=utf8 COLLATE=utf8_estonian_ci;

     
    添加主键约束、

    -- 直接使用 PRIMARY KEY (`id`),就可以为 id 字段添加主键约束
    CREATE TABLE `test`.`info2`(  
      `id` INT(11) NOT NULL,
      `idCard` VARCHAR(18) NOT NULL, 
      `mobile` VARCHAR(11),
      PRIMARY KEY (`id`)
    ) ENGINE=INNODB CHARSET=utf8 COLLATE=utf8_estonian_ci;
    
    -- 如果已经存在表,可以使用sql语句添加。
    ALTER TABLE `info2` ADD PRIMARY KEY (`id`);
    
    -- 主键约束可以使用多个字段组成
    ALTER TABLE `info2` ADD PRIMARY KEY (`id`,`idCard`);
    
    结果:
    FIELD   TYPE              COLLATION         NULL    KEY     DEFAULT  Extra           PRIVILEGES                       COMMENT  
    ------  ----------------  ----------------  ------  ------  -------  --------------  -------------------------------  ---------
    id      INT(11) UNSIGNED  (NULL)            NO      PRI     (NULL)   AUTO_INCREMENT  SELECT,INSERT,UPDATE,REFERENCES           
    idCard  VARCHAR(18)       utf8_estonian_ci  NO      PRI     (NULL)                   SELECT,INSERT,UPDATE,REFERENCES           
    mobile  VARCHAR(11)       utf8_estonian_ci  YES             (NULL)                   SELECT,INSERT,UPDATE,REFERENCES    
    
    -- 如果已经存在约束的,可以使用下面的语句进行修改
    -- 操作思路为先删除原来的,再添加新的
    ALTER TABLE `info2` DROP PRIMARY KEY, ADD PRIMARY KEY (`id`);

    移除主键约束:

    -- 移除主键的方法较为简单,直接使用 DROP PRIMARY KEY 就可以把全部的主键约束移除
    ALTER TABLE `info2` DROP PRIMARY KEY;
    原创内容,如果你觉得文章还可以的话,不妨点个赞支持一下!转载请注明出处。
  • 相关阅读:
    c# 改变FileUpload 上传文件大小
    使用ActiveX读取客户端mac地址
    javascript小技巧
    【2012百度之星/资格赛】H:用户请求中的品牌 [后缀数组]
    POJ1012 约瑟夫环问题[双向循环链表+打表技巧]
    北大ACM题分类
    ACM大量习题题库
    POJ1423 计算出n的阶乘的位数大数问题[Stirling公式]
    ACM训练计划(下)
    POJ2080 角度问题[cmath函数]
  • 原文地址:https://www.cnblogs.com/lixingwu/p/7212038.html
Copyright © 2020-2023  润新知