zoukankan      html  css  js  c++  java
  • mysql-建表约束

    主键约束

    可以唯一确定表中的一条记录。

    唯一 + 非空。

    联合主键

    由多个字段组成。

    create table user2(
        id INT,
        name VARCHAR(20),
        password VARCHAR(20),
        primary key(id,name)
    );

    只要主键值加起来不重复即可,也就是有一个不同就可以

    主键不可以重复,任何一个字段都不可以为空

    自增约束

    可以和主键约束一起使用。

    CREATE TABLE user3(
        id INT PRIMARY KEY AUTO_INCREMENT,
        name VARCHAR(20)
    );
    INSERT INTO user3(name) VALUES('张三');
    INSERT INTO user3(name) VALUES('张三');
    INSERT INTO user3(name) VALUES('张三');

     发现会自动生成id

    如果在键表的时候,忘记创建主键约束了

     则添加语句:(修改表结构,添加主键)

    alter table user4 add primary key(id);

    或者使用 midify 修改字段,添加约束。(这样操作比较少,了解一下)

    alter table user4 modify id int primary key;

    运行:

    通过这条语句删除:

    alter table user4 drop primary key;

    运行:

    外键约束

    涉及到两个表:父表、子表(主表、副表/从表??)。

    学生表是父表,班级表是主表,父表里的东西要参照主表,主表里面不存在的,父表无法添加。

    主表中的记录被副表引用,是不可以被删除的。

    唯一约束

    约束修饰的字段的值不可以重复

    即无法重复添加'zhangsan'。

    CREATE TABLE user5(
         id INT PRIMARY KEY AUTO_INCREMENT,
         name VARCHAR(20)
    );

    添加语句:(或者直接在上面的代码内添加 unique(name) )(或者直接在20的括号后面加 unique )

    alter table user5 add unique(name);

    或者:

    alter table user5 modify name varchar(20) unique;

    运行:

    如果一下子添加两个,也就是unique(name,id),表示的是组合在一起不重复,那么Key那边会变成MUL

    如何删除唯一约束?(需找到unique对应的字段)

    alter table user5 drop index name;

    非空约束

    修饰的字段不能为空(NULL)

    create table user9(
        id int,
        name varchar(20) NOT NULL
    );

    运行:

    默认约束

    当我们插入字段的时候,如果没有传值,就会使用默认值。

    create table user10(
        id int,
        name varchar(20),
        age int default 10
    );

    运行:

    插入一个元素:

    insert into user10(id,name) value(1,'zhangsan');

     发现:即使没有插入年纪,也会有默认年纪显示。

    外键约束

  • 相关阅读:
    GCD 使用说明
    iOS操作系统的层次结构
    Objective-C 类型转换
    UIView和Masonry实现动画效果
    iOS 常用手势
    SDUT 2610 Boring Counting(离散化+主席树区间内的区间求和)
    HDU 4417 Super Mario(主席树求区间内的区间查询+离散化)
    NBUT 1525 Cow Xor(01字典树+前缀思想)
    HDU 4825 Xor Sum(经典01字典树+贪心)
    HDU 1069 Monkey and Banana(二维偏序LIS的应用)
  • 原文地址:https://www.cnblogs.com/OFSHK/p/12719926.html
Copyright © 2011-2022 走看看