数据库学习笔记1——数据库概述及准备工作

文章目录

  • 前言
  • 数据库概述
    • 什么是数据库?数据库管理系统?SQL
  • 关系型数据库(Relational databases)
    • 数据库的基本单元——表(table)
  • 数据库准备工作
    • 安装MySQL数据库管理系统
    • 卸载MySQL数据库管理系统
    • 登录mysql数据库
  • 初步使用SQL语句
  • 总结

前言

数据库是想当软件开发者的程序猿必不可少的知识,想进大厂就莽足了劲,干就完了!从今天开始我会陆陆续续的记录我数据库的课堂笔记,加深自己的印象,也希望屏幕前的陌生人,一起加油!ψ(`∇´)ψ

数据库概述

什么是数据库?数据库管理系统?SQL

  • 数据库(DataBase,简称DB)

    • 通常是一个或一组文件,保存了一些符合特定规格的数据
    • 顾名思义:存储数据的仓库,实际上就是一堆文件
  • 数据库管理系统(DataBase Management System,简称DBMS)

    • 常见的数据库管理系统:Oracle, MySQL, SQL Server
    • 数据库管理系统是专门用来管理数据库中的数据的,数据库管理系统可以对数据库当中的数据进行增删改查
  • SQL,全程为 Structured Query Language**(结构化查询语言)**

    • SQL 用来和数据库打交道,完成和数据库的通信
    • SQL 是一套标准,但是每一个数据库都有自己特性(别的数据库没有),当使用这个数据库特性相关功能时,这时SQL语句可能就不是标准了**(90%以上的都是通用的)**
    • 通俗理解:程序猿需要学习SQL语句,通过编写SQL语句,然后DBMS负责执行SQL语句,最终完成对数据库中的数据进行增删改查操作
  • 三者之间的关系

    • DBMS – 执行 --> SQL – 操作 --> DB

关系型数据库(Relational databases)

在学习SQL语法前有必要解释一下什么是关系型数据库(Relational databases)?数据库由若干张表(table)组成,这里说的数据table很像Excal里的表格;如下,将介绍数据库的基本单元——表

数据库的基本单元——表(table)

  • 什么是表?为什么用表存储数据?

    • 举例,如下是一张表:

    table(表):Dog

    Id # Name(名字) # Weight(体重) # Height (身高) # Type (品种) # Age (月龄) # Color (肤色)
    1 Mike 3 28 吉娃娃 10
    2 Sala 6.5 40 柴犬 15
    3 黑狮 21.5 45 藏獒 26
    4 大圣 15 42 牧羊犬 20
    5 Boy 5.5 24 蝴蝶犬 6
    • 数据库当中是以表格的形式存储数据的。较为直观

    • 任何一张表都有行和列:

      • 行(row):被称为 数据/ 记录
      • 列(column):被称为 字段
        • 注意:每个字段都有:字段名,数据类型,约束等属性
          • 字段名:名字
          • 数据类型:字符串,数字,日期等等
          • 约束:遵循的一些规则,如不能重复,非空等等
    • 上面就是一个Dog表的简单展示,像这样一个狗数据库里,除了这张狗(Dog)表,还可能存在其他的表,比如有一张表是存狗品种信息, 另外有一张表是存狗主人信息的 …

    • 我们学习SQL, 其实最后目的就是在类似这张Dog表数据基础上, 可以通过SQL来回答诸如以下的一类问题: “现在全世界名字叫 'Mike’的狗有几条?”, 或者 “有多少条狗的毛发是 红色的?”, 等等。 通过SQL我们可以方便的去获取,统计这些信息。

数据库准备工作

安装MySQL数据库管理系统

  • 安装步骤省略(正常安装,下载源码make安装)
  • 注意:
    • 安装路径:自动安装到C盘
    • 端口号:端口号port是任何一个软件/应用都会有的,端口号是应用的唯一代表,端口号通常是和IP地址在一块
      • IP地址是用来蒂尼各位计算机的
      • 端口号port是用来定位计算机上某个服务/应用的!
      • mysql 数据库启动的时候,默认占有的端口号是 3306!
      • 在同一台计算机上,端口号不能重复,具有唯一性
    • 字符编码方式
      • 设置mysql数据库的字符编码方式为 UTF-8
    • 服务名称
      • 默认为:MySQL
    • 配置环境变量
      • 自动配置
    • mysql超级管理员账号
      • 账号:root
      • 密码:自己配置

卸载MySQL数据库管理系统

  • 步骤省略(第一步删安装包,第二步删目录)

登录mysql数据库

  • 在”开始“菜单里,选择自己下载的mysql服务

数据库学习笔记1——数据库概述及准备工作_第1张图片

  • 进入服务后,输入密码

数据库学习笔记1——数据库概述及准备工作_第2张图片

  • 如果密码输入正确,则会出现如下界面

数据库学习笔记1——数据库概述及准备工作_第3张图片

初步使用SQL语句

  • mysql常用命令

    • 退出mysql:exit;

    • 查看mysql中的所有数据库:show databases;

      • 代码演示:
      mysql> show databases;
      +--------------------+
      | Database           |
      +--------------------+
      | gaoxu              |
      | information_schema | ## 系统自带数据库
      | javaee-jdbc        | 
      | mysql              | ## 系统自带数据库
      | performance_schema | ## 系统自带数据库
      | ssm                |
      | test               | ## 系统自带数据库
      | test2              |
      +--------------------+
      8 rows in set (0.07 sec)
      
      mysql> exit
      
    • 选择使用某个数据库:use 数据库名字;

      • 代码演示
      mysql> use gaoxu; ## gaoxu 是数据库的名字
      Database changed  ## 出现这句话就代表正在使用gaoxu数据库
      
    • 创建数据库:create database 需要创建的数据库名称;

      • 代码演示
      mysql> create database test3; ## 创建名为 test3 数据库
      Query OK, 1 row affected (0.01 sec) ## 创建成功
      
      mysql> show databases; ## 查看所有数据库
      +--------------------+
      | Database           |
      +--------------------+
      | gaoxu              |
      | information_schema |
      | javaee-jdbc        |
      | mysql              |
      | performance_schema |
      | ssm                |
      | test               |
      | test2              |
      | test3              | ## 创建成功
      +--------------------+
      9 rows in set (0.00 sec)
      
    • 查看某个数据库下的所有表:show tables;

      • 代码演示
      mysql> use test2; ## 进入 test2 数据库
      Database changed
      
      mysql> show tables; ## 查看当前数据库下的所有表
      +------------------------+
      | Tables_in_test2        |
      +------------------------+
      | course201926010204     |
      | coursetype201926010204 |
      | department201926010204 |
      | enroll201926010204     |
      | speciality201926010204 |
      | student201926010204    |
      | teach201926010204      |
      | teacher201926010204    |
      +------------------------+
      8 rows in set (0.02 sec)
      
    • 注意事项:

      • 所有sql都用英文;结尾
      • SQL 命令不区分大小写
        • show databasesSHOW DATABASES效果是一样的

总结

这次主要是总结了一下数据库入门所需要了解的知识,接下的笔记将会根据模块来分批次更新,有什么疑问请在评论区留言,博主会第一时间回复,一起学习!q(≧▽≦q)

你可能感兴趣的:(数据库学习笔记,数据库,sqlserver,mysql)