SQL基本概念

学习目标

  1. 理解数据库基本概念:包括数据库、数据表、字段、记录等基本概念,理解关系型数据库的特点。
  2. 安装和配置 MySQL:了解如何在不同的操作系统上安装 MySQL,如何配置 MySQL,包括设置密码、创建用户等。
  3. 理解 SQL 语言:SQL 是操作关系型数据库的标准语言,需要理解 SQL 的基本语法和结构。
  4. 掌握基本的 SQL 操作:包括数据的增(INSERT)、删(DELETE)、改(UPDATE)、查(SELECT)等操作。
  5. 创建和管理数据库和数据表:了解如何使用 SQL 语句创建数据库和数据表(CREATE DATABASE, CREATE TABLE),如何修改数据表结构(ALTER TABLE),如何删除数据库和数据表(DROP DATABASE, DROP TABLE)。
  6. 理解数据类型:了解 MySQL 支持的各种数据类型,包括整数类型、浮点数类型、字符串类型、日期和时间类型等,以及它们的使用场景。
  7. 掌握查询操作:能够编写复杂的 SELECT 查询,包括使用 WHERE 子句过滤数据、使用 JOIN 连接多个表、使用 GROUP BY 和聚合函数进行分组和聚合操作、使用 ORDER BY 对结果进行排序等。
  8. 理解索引:了解索引的作用,知道何时应该创建索引,以及如何创建和删除索引。
  9. 理解事务:了解事务的概念,理解 ACID 特性,知道如何在 MySQL 中使用事务。
  10. 掌握基本的数据库设计和规范化:理解数据库设计的基本原则,包括数据冗余、数据一致性、数据完整性等,理解规范化的概念,并能进行基本的数据库设计。

信息的基本操作:增删改查

  • 例子:
    • 文件夹、文件也有增删改查
  • 编程解决的就是增删改查的问题
  • 所有信息都可以增删改查

使用数据库的好处

  • 可以灵活的进行各种条件的查询
  • 可以批量更新数据
  • 可以把特定的计算保存下来,而不需要挨个更新单元格
  • 其他:可以允许多人进行协作,不会出现文件版本的问题

数据库结构的三个层级

  • 数据库
  • 数据库表
  • 数据库表里的数据

读菜鸟教程的文档

  • 看左边栏,这些都是重点概念
  • 从混乱的顺序中读出头绪
    • 给左边栏分类:按照数据库结构的三个层级分类
      • 对数据库的操作
      • 对数据表的操作
      • 对数据的操作:
        • SELECT相关的内容
        • 数据修改:insert, update, delete
        • 函数
  • 学习方法:要学会读文档,抓重点,按照框架来分类

练习1:查询

用菜鸟教程的案例,示范Select的各种用法:where,and,or,order by

介绍Navicat的查询创建工具

案例1:校务管理

  • 找到男生或者女生
  • 找到姓孔的学生
  • 找到姓唐或者姓孔的学生
  • 找到出生在2010年的学生
  • 按学生年纪从小到大排序

案例2:进销存

  • 找到没付款的订单
  • 找到某顾客的没付款的订单
  • 找到含有某类产品的没付款的订单
  • 按时间由早到晚和顾客姓名由A到Z的顺序排列结果

练习2:修改

如何利用数据库,批量更新数据

案例1:校务

  • 学生改名字了,在分班、成绩里,批量更新学生名字

案例2:进销存

  • 顾客改地址了,批量更新订单地址
    • 批量更新某个日期之后的订单地址

总结

  • ID的重要性
  • 提醒不要被不懂的概念卡住,比如JOIN,UPDATE SET

练习3:视图

视图的概念:

  • 把查询记下来,把结果显示给你看
  • 完全可以当作一张表来用
  • 结果会随着数据实时更新
  • 常用的查询,可以保存为视图,不用每次都写查询

操作:

  • Navicat的视图创建工具
  • 示范JOIN,仅仅简单讲解

案例1:校务管理

  • 查找学号重复的学生
  • 查找班号重复的班级
  • 查找没有班级的学生
  • 查找没有学生的班
  • 查找有多个班级的学生
  • 把这些查询作为视图保存下来,只要有异常数据,打开就可以查看,不需要重复写查询

案例2:进销存系统

  • 把没付款的订单,加上顾客的名字、电话和地址,都列出来
  • 统计每个月有多少订单

Navicat用法

界面分类介绍

  • Menu Bar:新建查询
  • 左边的数据库
  • 中间显示结果

示范:

  • 导入导出SQL文件
    • 整个数据库导出来,再导入到新建的数据库里
    • 导出单个数据表,再导入进来
  • 导入Excel文件:
    • 导入学生信息、班级信息
    • 导入顾客信息

1. SQL 基本概念

数据的基本操作

增删改查是所有信息(数据)的基本操作。

编程就是解决增删改查的问题

写程序,最重要的就是解决权限的控制,决定谁能看什么?谁能干什么?谁能增加数据、谁能修改数据、谁能删除数据?

数据库与数据表格的关系

数据库相当于文件夹,数据库里的表格相当于文件夹下面的文件(如excel 文件)

SQL语句分类

数据库的增删改查与数据库表格增删改查是不一样的。

  • 数据库的增删改查,4种SQL语句:CREATE,DROP,ALTER,SHOW
  • 数据表格的增删改查,4种SQL语句:INSERT,DELETE,UPDATE,SELECT

关系型数据库的一大功能:视图

只需要在数据表里更改数据,在视图和查询里相应的数据都会被更改,使数据管理起来更加方便,更有效率。

3. 资源

点击这里下载本课的示范代码。

4. 作业:

读文档;读SQL文档;快快扫一遍。

在资源里下载本课的SQL代码,通过新建查询,把四个表创建起来。

在Navicat里,操作一下“连接”、“新建查询”、“表”、“视图”等按钮。在查询和视图里,尝试使用一下“查询创建工具”和“视图创建工具”。