Skip to content

Latest commit

 

History

History
229 lines (137 loc) · 7.19 KB

1、数据库概述.md

File metadata and controls

229 lines (137 loc) · 7.19 KB

数据库介绍

  • 什么是sql
    • 一般结构化查询语言
  • 常见数据库
    • SQL Server
    • MySQL
    • Oracle
    • Sybase
    • DB2
    • H2
  • 为什么要用数据库
    • 存放数据方便,提高数据存放的效率及安全性,进行数据共享
  • 什么是数据库
    • 存放数据的仓库,将数据按照表的形式组织起来进行存放
  • 数据库的基础概念
    • 实体
      • 数据库中存放的每一条记录可以理解为一个实体,如学生表中的每一个学生,商品表中的每一个商品。
    • 属性
      • 每一个实体的特征,我们用属性来描述实体。(列、字段)
    • 数据
      • 如属性的属性值 001、张三就是数据。数据的形式保含文本信息、图片、视频、音频、日期时间等等
    • 常用的客户端
      • navicat sqlyog

数据库结构:

说明: clipboard.png

如果要使用CMD窗口作为客户端,需要配置环境变量,在path中添加如下变量值:Program Files\MySQL\MySQL Server 5.5\bin;

  • my.ini
  • 是mysql数据库核心配置文件

注意:使用数据库之前一定启动服务

  1. 数据库服务器
  2. mysql默认数据库
  • information_schema
    • 提供了访问数据库元数据的方式,数据库字典。 保存着关于MySQL服务器所维护的所有其他数据库的信息。(如数据库名,数据库的表,表栏的数据类型与访问权 限
  • mysql
    • mysql的核心数据库,类似于sql server中的master表,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息
  • performance_schema
    • 数据库服务器的性能参数

Sql语句

MySQL的语法规范

  1. 不区分大小写,但建议关键字大写,表名、列名小写
  2. 每条命令最好用分号结尾
  3. 每条命令根据需要,可以进行缩进或换行
  4. 注释
  • 单行注释:#注释文字
  • 单行注释:-- 注释文字
  • 多行注释:/* 注释文字 */

SQl语句分类

DDL data definition language 数据定义语句 (create alter drop)

DML data manipulation language 数据操作语句 (insert update delete)

DQL data query language 数据查询语句(select)

DCL data control lanugage 数据控制语句(grant revoke commit rollback)

MySQL常用命令

MySQL服务的登录和退出

登录:mysql 【-h 主机名 -P 端口号】 -u 用户名 -p密码

退出:exit或ctrl+C

MySQL服务的启动和停止

方式一:通过dos窗口

net start 服务名

net stop 服务名

查看服务器的版本

方式一:登录到mysql服务端

select version();

方式二:没有登录到mysql服务端

mysql --version 或 mysql --V

查看SQL执行情况

explain

数据类型

整数类型

说明: untitle.png

int(4):配合zerofill进行使用,显示占4位宽度,不够会补零,需要是无符号

小数类型

说明: untitle.png

DECIMAL(max(65),max(30)):最大数字位数和最大小数位数

如果精确运算,使用DECIMAL,没有精确运算的需求,建议使用float double

字符串类型

说明: untitle.png

char和varchar的区别

  • 场景区别:char适合存放定长字符串,varchar存放长度可变的字符串
  • 后面的数字:字符个数,char后面最多可以写到255,varchar:一行数据最多占65535个字节(除去Bolb类的数据类型)
  • 除去其他列所占的空间,剩余的空间和varchar后面写的字符个数有关系,编码不同,一个字符所占用的存储空间也不一样,所以也会影响varchar后字符个数
  • char是固定长度,char(5),如果存放了3个字符,也会按照5个字符占用存储空间
  • varchar(5):可变长度,如果存储了3个字符,会按照3个字符占用存储空间。
  • 速度区别:char优于varchar
  • 空格的处理:char会消灭掉字符后自己插入的空格,varchar不会

二进制数据类型

说明: untitle.png

日期和时间数据类型

说明: untitle.png

date和datetime的区别

  • date类型可用于需要一个日期而不需要时间的部分
    • 格式为YYYY-MM-DD 范围是'1000-01-01' 到'9999-12-31'
  • datetime类型可用于需要同时包含日期和时间的信息的值
    • 格式为YYYY-MM-DD HH:mm:ss 范围是'1000-01-0100:00:00' 到 '9999-12-3123:59:59'

enum和set的区别:

enum只能从列出来的值中选择一个作为数据,set可以从列出来的值中选择多个值作为数据。

三大范式:

第一范式

  • 每列保证原子性,且唯一

第二范式

  • 首先满足第一范式
  • 必须要有一个主键
  • 如果主键是复合主键,除了主键以外的其他列必须完全依赖于主键列,不能只依赖于主键的一部分

第三范式

  • 满足第二范式
  • 除了主键以外的其他列必须直接依赖于主键,不能间接依赖于主键

MySQL安装

1、下载mysql5.5

http://dev.mysql.com/downloads/mysql/5.5.html#downloads

img

2、开始安装

img

img

img

img

img

img

img

img

image-20210904164417072

3、进行配置

image-20210904172123767

img

img

此处选择详细配置

img

此处选择开发机

img

此处选择多功能数据库

img

img

直接下一步

image-20210904163444309

image-20210904160547768

img

img

img

img