为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
学习人数
综合评分9.67
950人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 添加主键约束:

    ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index-col_name,...)

    添加、删除默认约束:

    ALTER TABLE tb_name ALTER [COLUMN] co_name {SET DEFAULT literal | DROP DEFAULT}

    查看全部
  • 添加单列:

    ALTER TABLE tb_name ADD [COLUMN] co_name column_definition [FIRST | AFTER co_name]

    删除列:

    ALTER TABLE tb_name DROP [COLUMN] co_name

    查看全部
  • 表级约束与列级约束

    1. 对一个数据列建立的约束,称为列级约束

    2. 对多个数据列建立的约束,称为表级约束

    3. 列级约束既可以在列定义时声明,也可以在列定义后声明

    4. 表级约束只能在列定义后声明

    查看全部
  • 外键约束的参照操作

    1. CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行

    2. SET NULL:从父表删除或更新行,并设置子表中的外键列为 NULL。如果使用该选项,必须保证子表列没有指定 NOT NULL

    3. RESTRICT:拒绝对父表的删除或更新操作。

    4. NO ACTION:标准 SQL 的关键字,在 MySQL 中与 RESTRICT 相同


    查看全部
  • 创建外键约束:

    FOREIGN  KEY (pid) REFERENCES provinces (id)

    查看全部
  • FREIGN KEY(外键约束):

    功能:

    1. 保持数据一致性、完整性

    2. 实现一对一或一对多关系(称为“关系型数据库”的根本原因)

    要求:

    1. 父表和子表必须使用相同的存储引擎,而且禁止使用临时表

    2. 数据表的存储引擎只能为InnoDB

    3. 外键列的参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同

    4. 外键列和参照列必须创建索引。如果参照列不存在索引的话,MySQL将自动创建索引(创建主键时自动添加索引)

    子表:具有外键列的表

    父表:子表所参照的表

    查看全部
    1. 约束保证数据的完整性一致性

    2. 约束分为表级约束列级约束

    3. 约束类型包括:

      NOT NULL(非空约束)

      PRIMARY KEY(主键约束)

      UNIQUE KEY(唯一约束)

      DEFAULT(默认约束)

      FOREIGN KEY(外键约束)

    查看全部
  • 一、数据表

    1. 概述

    数据表(或称表)是数据库最重要的组成部分之一,是其他对象的基础。

    实质就是一张二维表,其中行称为记录,列称为字段。

    数据类型

    描述

    integer(size)

    int(size)

    smallint(size)

    tinyint(size)

    仅容纳整数。在括号内规定数字的最大位数。

    decimal(size,d)

    numeric(size,d)

    容纳带有小数的数字。

    "d" 规定小数点右侧的最大位数。

    char(size)

    容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。

    在括号中规定字符串的长度。

    varchar(size)

    容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。

    在括号中规定字符串的最大长度。

    date(yyyymmdd)

    容纳日期。

    二、 创建数据表

    1. 创建数据表

    CREATE TABLE [IF NOT EXISTS] table_name(
    column_name data_type,
    ....
    );

    Demo: 创建一张名为 tb1 的表,包含 usename ,age 和 salary 三个字段

    CREATE TABLE tb1(
    username VARCHAR(20),
    age TINYINT UNSIGNED,
    salary FLOAT(8,2) UNSIGNED
    );

    2. 查看数据表列表

    SHOW TABLES [FROM db_name] [LIKE 'patten' | WHERE expr] ;

    Demo:

    SHOW TABLES;

    3. 查看数据表结构

    SHOW COLUMNS FROM tbl_name;

    DESC tbl_name;

    4. 插入记录

    INSERT [INTO] tbl_name[(col_name,...)] VALUES(val,..);

    Demo: 为之前创建的 tb1 插入一条记录

    INSERT tb1(username,age,salary) VALUES("John",27,4999.60);

    5. 查找记录

    SELECT expr,... FROM tbl_name;

    Demo: 查找之前为 tb1 插入的记录

    SELECT * FROM tb1;

    三、 字段属性

    1. 空值与非空

    • NULL,字段值可以为空

    • NOT NULL,字段值禁止为空

    Demo: 为 t2 表的 name 字段设置非空

    CREATE TABLE t2(
    name NOT NULL
    );

    2. 自动编号

    • AUTO_INCREMENT

    • 自动编号,且必须与主键组合使用

    • 默认情况下,起始值为 1,每次增量为 1

    • 该子段一定为数值型,如果为浮点数小数位数为 0

    3.  主键

    • PRIMARY KEY

    • 主键不一定必须和自动编号使用

    • 主键自动为 NOT NULL

    • 主键保证记录的唯一性

    • 每张表只能存在一个主键

    4. 唯一约束

    • UNIQUE KEY

    • 唯一约束可以保证记录的唯一性

    • 唯一约束的字段可以为空值(NULL)

    • 每张数据表可以存在多个唯一约束

    5. 默认约束

    • DEFAULT

    • 当插入记录时,如果没有明确为字段赋值,则自动赋予默认值


    查看全部
    0 采集 收起 来源:总结

    2020-08-06

  • order by 排序

    select * from user order by age;  默认升序排序

    select * from user order by age,id desc;

    asc  升序

    desc  降序


    查看全部
  • 分组条件   having

    select sex,age  from user  group by sex having age>10;

    select sex from user group by 1 having count(id) >=2;

    查看全部
  • asc  升序

    desc  降序

    group by 分组

    查看全部
  • where 表达式中可以使用MySQL支持的函数和运算符。

    查看全部
  • select 列名,列名 from 表名; * 表示所有列

    别名:(建议不用空格,用as关键词 )

    select id as userid,username as uname  from users;

    查看全部
  • delete from 表名 where 条件;

    删除后再添加的时候索引不会补在删除的位置,会继续向下索引

    查看全部
  • 更新记录

    update 表名 set  列名=    where  条件


    查看全部

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!