工作实习培训第四天

MySQL

初识MySQL

javaEE:企业级Java开发 Web

前端(页面:展示,数据)

后台(连接点:连数据库JDBC,链接前端(控制,控制试图跳转,和给前端传递数据))

数据库(存数据,Txt,Excel,World)

mysql

为什么学习数据库

  1. 岗位需求
  2. 现在的世界,大数据时代~,得数据库者得天下
  3. 被迫需求:存数据
  4. 数据库是所有软件体系中最核心得存在 DBA

什么是数据库

数据库(DB,DataBase)

概念:数据仓库,软件,安装在操作系统(window,linux,mac,…)之上!SQL,可以存储大量的数据

作用:存储数据,管理数据

数据库分类

关系型数据库:行/列

  • MySQL,Oracle,Sql Server,DB2,SQLlite
  • 通过表与表之间,行和类之间得关系进行数据得存储,学员信息表,考勤表,…

非关系数据库:(NoSQL) Not Only SQL {key:value}

  • Redis,MongDB
  • 非关系型数据库,对象存储,通过对象的自身的属性来决定

DBMS(数据库管理系统)

  • 数据库的管理软件,科学有效的管理我们的数据。维护和获取数据
  • MySQL,数据库管理系统

MySQL简介

MySQL是一个关系型数据库管理系统

前世:瑞典MySQL AB公司

今生:属于Oracle旗下产品

MySQL是最好的RDBMS(Relatonal Database Management System,关系型数据库管理系统)应用软件之一

开软的数据库软件

体积小,速度快,总体拥有成本低,招人成本比较低,所有人必须会

中小型网站、或者大型网站、集群!

官网:https://www.mysql.com

官网下载地址:https://dev.mysql.com/downloads/mysql/

安装建议:

  1. 尽量不使用exe安装,否则卸载麻烦
  2. 尽可能使用压缩包安装

安装MySQL

教程:https://www.cnblogs.com/hellokuangshen/p/10242958.html

  1. 解压
  2. 把这个包放到自己的电脑环境目录下
  3. 配置环境变量
  4. 新建mtsql.ini
  1. 启动管理员模式下的CMD,运行所有的命令
  2. 安装mysql服务
  3. 初始化数据库文件
  4. 启动mysql,进去修改密码~
  5. 进入mysql通过命令行(-p后面不要加空壳),修改密码(sql语句后面一定假分号!)
  6. 注释掉ini中的跳过密码
  7. 重启mysql,测试链接

sc delete mysql 清空服务

安装SQLyog

  1. 安装
  2. 注册
  3. 打开连接数据库
  4. 创建数据库school

每一个sqlyog的执行操作,本质就是对应了一个sql,可以在软件的历史记录中查看

  1. 创建数据库表
  1. 查看表
  1. 向表中添加数据

连接数据库

命令行连接

数据库XXX语言 CRUD增删改查

DDL 定义

DML 操作

DQL 查询

DCL 控制

操作数据库

操作数据库>操作数据库中的表>操作数据库中表的数据

数据库

  1. 创建数据库
  1. 删除数据库
  1. 使用数据库

如果表名或字段名是要一个特殊字符,就需要带“

  1. 查看数据库

数据库的列类型

数值

  • tinyint 十分小的数据 1个字节
  • smallint 较小的数据 2个字节
  • mediumint 中等大小的数据 3个字节
  • int 标准的整数 4个字节
  • bigint 较大的数据 8个字节
  • float 浮点数 4个字节
  • double 浮点数 8个字节
  • decimal 字符串形式的浮点数 金融计算的时候,一般是使用decimal

字符串

  • char 字符串固定大小的 0~255
  • varchar 可变字符串 0~65535 常用的 string
  • tinytext 微型文本 2^8-1
  • text 文本串 2^16-1 保存大文本

数据日期

java.util.Date

  • date YYYY-MM-DD 日期格式
  • time HH:mm:ss 时间格式
  • datetime YYYY-MM-DD HH:mm:ss 最常用的时间格式
  • timestamp 时间戳 1970.1.1到现在的毫秒数 也较为常用
  • year 年份表示

null

  • 没有值,未知
  • 注意,不要使用NULL进行运算,结果为NULL

数据库的字段属性

Unsigned:

  • 无符号的整数
  • 声明了该列不能声明为负数

zerofill:

  • 0填充的
  • 不足的位数,使用0来填充,int(3),5 — 005

自增:

  • 通过李伟杰自增,自动在上一条记录的基础上+1
  • 通常用来设计唯一的主键~index,必须是整数类型
  • 可以自定义设计主键自增的起始值和步长

非空 NULL not NULL

  • 假设设置为not null,如果不给它赋值,就会报错!
  • NULL,如果不填写值,默认就是null

默认:

  • 设置默认的值
  • sex,默认值为 男,如果不知道该列的值,则会有默认的值

拓展

创建数据库表

格式

常用命令

时间表的类型

MYISAM INNODB
事务支持 不支持 支持
数据行锁定 不支持 支持
外键约束 不支持 支持
全文索引 支持 不支持
表空间的大小 较小 较大,约为2倍

常规使用操作:

  • MYISAM 节约空间,速度较快
  • INNODB 安全性高,事务的处理,夺表多用户操作

在物理空间存在的位置

所有的数据库文件都在data目录下
本质还是文件的存储

MySQL引擎在物理文件上的区别

  • INNODB在数据库表中只有一个*.frm文件,以及上级目录下的ibddata1文件
  • MYISAN对应文件
    • *.frm 表结构的定义文件
    • *.MYD 数据文件(data)
    • *.MYI 索引文件(index)

设置数据库表的字符集编码

不设置的话,会是MySQL默认的字符集编码(不支持中文)

MySQL的默认编码是Latin1,不支持中文

在my.ini中配置默认的编码

修改删除表

修改

删除

所有的创建和删除操作尽量加上判断

注意点:

  • ··字段名,使用这个包裹
  • 注释 – /**/
  • sql关键字大小写不敏感
  • 所有的符号全部用英文

MySQL数据管理

外键

方式一 在创建表的时候,增加约束

删除有外键关系的表的时候,必须要先删除引用别人的表(从表),在删除被引用的表(主表)

方式二:创建表成功后,添加外键约束

以上的操作都是物理外键,数据库级别的外键,不建议使用(避免数据库过多造成困扰)

最佳实践

  • 数据库就是单纯的表,只用来存数据,只有行(数据)和列(字段)
  • 我们想使用多张表的数据,向使用外键(通过程序去实现)

DML语言

**数据库意义:**数据存储,数据管理

DML语言:数据操作语言

  • insert
  • update
  • delete

添加

语法:

注意事项:

  1. 字段和字段之间使用英文逗号隔开
  2. 字段是可以省略的,但是后面的值必须一一对应
  3. 可以同时插入多条数据,values后面的值,需要使用,隔开即可

修改

update 修改谁(条件) set 原来的值=新值

条件:where子句 运算符 id等于某个值,大于某个值,在某个区间修改…

操作符 含义 范围 结果
= 等于 5=6 false
!= 不等于 56 true
>
>=
BETWEEN…AND… 在某个范围内 [2,5]
AND 我和你 && 5>1 and 1>2 false
OR 我或你 || 5>1 or 1>2 true

语法:

注意:

  • column_name是数据库的列,需带上“
  • 条件,筛选的条件,如果没有指定,则会修改所有的列
  • value,是一个具体的值,也可以是是一个变量
  • 多个设置的属性之间,使用英文逗号隔开

删除

DELETE命令

语法:

-- 删除数据(避免这样写,会全部删除)DE

来源:涅丶梦

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年7月22日
下一篇 2022年7月22日

相关推荐