一文带你掌握MYSQL数据库

什么是数据库?

1.数据库:保存有组织的数据的容器

2.数据库表:某种特定类型数据的结构化清单

(注)可以将数据库和数据库表比作文件夹和文件,同一个文件夹中不能存在相同文件名的文件,同理,同一个数据库中也不能存在相同表名的表.

3.列:每个数据库表都由列组成,每一列存储着表中部分信息.

(注)可以将数据库表看作一个表格,表格中的每一列存储一条特定的信息,每一列都由特定的数据类型限定,表中的每一行为一条记录,表中的行数为记录的行数.

4.主键:一列或一组列,其值能够唯一区分表中每一行.

(注)只要满足以下两个条件即可作为主键:

​ 1.任意两行都不具有相同的主键值.

​ 2.每个行都必须具有主键值(主键值不能为NULL值)

​ 若选择多个列作为主键,多个列值的组合必须是唯一的,但单个列的值可以不唯一.

5.关键字:作为MYSQL语言组成部分的一个保留字,绝不能用关键字命名一个表或列.

MYSQL数据库关键字
  • USE关键字,用于切换数据库.(注:必须先使用USE打开数据路,才能读取数据库中的数据)

    在这里插入图片描述

  • SHOW关键字,用于显示数据库,表,列,用户,权限等信息.

    • SHOW DATABASES; 用于显示可用数据库

      在这里插入图片描述

    • SHOW TABLES; 用于显示数据库中的表信息.

      在这里插入图片描述

    • SHOW COLUMNS;用于显示表中列信息.

      在这里插入图片描述

    • SHOW STATUS;用于显示广泛的服务器信息.

    • SHOW CREATE DATABASE 和SHOW CREATE TABLE 用于显示创建数据库和数据库表的MYSQL语句.

    • SHOW ERROES 和SHOW WARINGS 用于显示数据库错误和警告信息.

  • SELECT关键字,可用于检索单个或多个列,可用*通配符检索某个表中全部列.

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • LIMIT关键字,可用于限定检索的行数.

    (注)LIMIT 5 说明从0行开始的五行.(起始从0行开始)

    在这里插入图片描述
    (注)LIMIT 3,5说明从第三行开始的五行.(起始从0行开始)
    在这里插入图片描述

  • DISTINCT关键字,指示MYSQL只返回不同的值,DISTINCT只能放在列名前,DISTINCT关键字应用于所有列,而不止是它的前置列.

  • ORDER BY关键字 ,排序检索出来的数据,既可以通过选择列排序,也可根据非选择列排序.

    (注)通过选择列排序

    在这里插入图片描述

    (注)通过非选择列排序

    在这里插入图片描述

    (注)按多个列排序,此时仅在多行具有相同name时才会根据id排序.

    在这里插入图片描述

  • DESC 和 ASC关键字,指定排序方向,DESC:降序排列,ASC:升序排列(MYSQL默认升序排列,故ASC关键字用处不大).

在这里插入图片描述

  • WHERE关键字 ,可指定搜索条件(过滤条件).

    在这里插入图片描述

    (注)在同时使用WHERE和ORDER BY时ORDER BY 必须在WHERE子句后面,否则会产生错误.

    在这里插入图片描述

  • AND和OR关键字,可连接两个WHERE子句,AND关键字筛选满足两个条件的列,OR关键字筛选满足两个条件之一的列.

  • IN操作符,用于指定条件范围.

    在这里插入图片描述

  • NOT操作符,用于否定其后所跟的条件.

  • LIKE操作符,用于通配符匹配,%通配符表示可匹配任意字符的任意次数,_通配符表示只能匹配任意的单个字符.

    在这里插入图片描述

    在这里插入图片描述

  • AS关键字,可用于给列名起别名.

    在这里插入图片描述

  • GROUP BY子句,用于创建分组.

  • HAVING,用法类似于WHERE,只不过WHERE过滤行,HAVING过滤分组.

  • INSERT INTO关键字,用于向表中插入值.

  • UPDATE关键字,用于更新或修改表中的数据,若在出错时防止继续进行更新,可在UDPDATE后加IGNORE关键字.

  • DELETE关键字,用于删除表中数据.

    (注)UPDATE和DELETE应谨慎使用,使用时一定要加上WHERE子句,否则会将更新或删除作用于全表.

  • CREATE关键字,用于创建表.

  • ALTER关键字,用于更改表结构.

  • DROP关键字,用于删除表.

  • RENAME关键字,用于重命名表.

MYSQL数据处理函数
  • 文本处理函数

    • Concat()函数,用于拼接字符串.

      在这里插入图片描述

    • Trim()函数,用于去除列表两端的空格,RTrim()去除右端空格,LTrim()去除左端空格.

    • Upper()函数,将文本转化为大写.

    • Left()函数,返回串左边的字符.

    • Length()函数,返回串的长度.

    • Locate()函数,找出串的一个字串.

    • SubString()函数,返回子串的字符.

  • 日期处理函数

    • AddDate()函数,增加一个日期(天,周等).
    • AddTime()函数,增加一个时间(时,分等).
    • CurDate()函数,返回当前日期.
    • CurTime()函数,返回当前时间.
    • Now()函数,返回当前日期和时间.
    • Time()函数,返回一个日期时间的时间部分.
    • Year()函数,返回一个日期时间的年份部分.
  • 数值处理函数

    • Abs()函数,返回一个数的绝对值.
    • Cos()函数,返回一个角度的余弦.
    • Exp()函数,返回一个数的指数值.
    • Mod()函数,返回除操作的余数.
    • Pi()函数,返回圆周率.
    • Rand()函数,返回一个随机数.
    • Last_insert_id()函数,返回最后一个AUTO_INCREMENT值.
  • 聚集函数

    • AVG()函数,返回某列的平均值.
    • COUNT()函数,返回某列的行数.
    • MAX()函数,返回某列的最大值.
    • MIN()函数,返回某列的最小值.
    • SUM()函数,返回某列的值之和.
视图

视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询.即包含的是一个SQL查询.

  • 为什么使用视图?
    • 重用SQL语句.
    • 简化复杂的SQL操作,在编写查询后,可以方便的重用而不必知道其查询细节.
    • 使用表的组成部分而不是整个表.
    • 保护数据,可以给用户授予表的特定部分的访问权限而不是整个表的访问权限.
    • 更改数据格式和表示,视图可返回与底层表的表示和格式不同的数据.
事务处理

MYSQL是关系型数据库,设计良好的数据库模式都是关联的,如果在相关联的两个表中添加数据,在其中一个表中添加数据后另一个表的数据添加失败时,数据库中会出现不完整的数据.为保证数据库中不包含不完整的操作结果,利用事务处理,可以保证一组操作不会中途停止,它们或者作为整体执行,或者完全不执行。

  • ROLLBACK命令,用于回退MYSQL语句.

  • COMMIT命令,在事务处理块中,提交不会隐含进行,为进行明确的提交,使用COMMIT命令.

  • SAVEPOINT,创建保留点,可使用ROOLLBACK TO 回退至指定保留点.

个人主站:http://risestone.club

更多资讯请关注小石coder,更有免费资料领取

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值