zoukankan      html  css  js  c++  java
  • 5.MYSQL-主键约束

    主键(PRIMARY KEY)

    主要关键字段,在数据表中可以是一个或多个关键字段,唯一标识某一条记录。
    1.主键不能为重复;
    2.主键不能为null;
    3.一张表中只能有一个主键;
    4.主键可以设置自增;
    5.设置自增的主键也可以插入值,插入后下一条记录自增按照最后一个主键自增;
    6.AUTO_INCREMENT 自增

    主键添加

    创建表时创建主键

    1.主键字段后添加

    CREATE TABLE school.teacher2(
          tno   INT PRIMARY KEY AUTO_INCREMENT,
          name  VARBINARY(100),
          phone VARBINARY(11)
      );
    

    2.字段最后添加

    CREATE TABLE school.teacher3(
          tno   INT,
          name  VARBINARY(100),
          phone VARBINARY(11),
          PRIMARY KEY (tno)
      );
    

    3.字段最后CONSTRAINT关键字
    PRI_TNO主键名称

    CREATE TABLE school.teacher4(
          tno   INT,
          name  VARBINARY(100),
          phone VARBINARY(11),
          CONSTRAINT PRI_TNO PRIMARY KEY (tno)
      );
    
    

    一个表中创建多个主键

    CREATE TABLE school.user(
        uid   int,
        uname VARBINARY(50),
        pw    VARBINARY(50),
        PRIMARY KEY (uid, uname)
    );
    INSERT INTO school.user
    VALUES (1, 'givin', '123456'),
           (1, 'givin', '456'); //无法插入 主键重复;
    
    

    在创建完表后添加主键

    1.修改字段属性、
    添加的字段在数据表中有重复,不润许添加,如果没有重复可以添加

      ALTER TABLE teacher modify tno INT PRIMARY KEY ;
    

    2.添加字段属性

      ALTER TABLE teacher ADD PRIMARY KEY (tno);
    

    3.CONSTRAINT

      ALTER TABLE teacher ADD CONSTRAINT pri_tno PRIMARY KEY (tno);
    

    删除主键

      alter table teacher drop PRIMARY KEY ;
    

    查看创建表的信息

      SHOW CREATE TABLE school.user;
    
  • 相关阅读:
    401. Binary Watch
    46. Permutations
    61. Rotate List
    142. Linked List Cycle II
    86. Partition List
    234. Palindrome Linked List
    19. Remove Nth Node From End of List
    141. Linked List Cycle
    524. Longest Word in Dictionary through Deleting
    android ListView详解
  • 原文地址:https://www.cnblogs.com/liangfc/p/14443634.html
Copyright © 2011-2022 走看看