「这是我参与11月更文挑战的第11天,活动详情查看:2021最后一次更文挑战」
相关文章
MySQL:MySQL系列
前言:
MySQL是一个关系型数据库管理系统,是目前最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
- 优点:
- ①开源的数据库软件,关键是免费的!
- ②体积小,速度快,总体拥有成本低,招人成本比较低。
- ③一般中小型网站的开发都选择 MySQL 作为网站数据库。
1、数据库
1.1 基本的操作
1.创建数据库
1 | sql复制代码CREATE DATABASE IF NOT EXISTS testDataBase; |
2.删除数据库
1 | sql复制代码DROP DATABASE IF EXISTS testDataBase; |
3.使用数据库
1 | sql复制代码USE school; |
4.查看数据库
1 | sql复制代码SHOW DATABASE; |
1.2 数据库的列类型
①数值:
1 | bash复制代码tinyint 十分小的数据 1个字节 |
②字符串:
1 | bash复制代码char 字符串固定大小 0-255 |
③时间日期:
1 | bash复制代码date YYYY-MM-DD,日期 |
④null:
1 | bash复制代码没有值,未知 |
1.3 数据库的字段类型
①unsigened:
1 | bash复制代码无符号的整数 |
②zerofill:
1 | bash复制代码0填充的 |
③自增:
1 | bash复制代码通常理解为自增,自动在上一条记录的基础上+1 |
④非空 NULL not Null
1 | bash复制代码假设设置为 not null,如何不给他赋值,就会报错 |
⑤默认:
1 | bash复制代码设置默认的值! |
1.4创建表
①创建:
1 | sql复制代码--目标:创建一个schoo1数据库 |
②格式:
1 | sql复制代码CREATE TABLE [IF NOT EXISTS] `表名`( |
1.5 数据表的类型
①INNODB和MYISAM:
MYISAM | INNODB | |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间的大小 | 较小 | 较大,约为MYISAM的两倍 |
注意的是:
- 在MySQL5.6版本以后INNODB也支持了 全文检索,但是只支持英文的检索。有兴趣的小伙伴可以自己去了解下两种表的类型底层存储方式的区别,在此我不多讲。
常规使用操作: - MYISAM 节约空间,速度较快,
- INNODB 安全性高,事务处理,多表多用户操作
②在物理空间存在的位置:
所有的数据库文件都存在data目录下,一个文件夹就对应一个数据库
本质还是文件的存储
MySQL 引擎在物理文件上的区别
- innoDB 在数据库表中,只有一个*.frm文件,以及上级目录下的ibdata1文件
- MYISAM 对应的文件
- *.frm - 表结构的定义文件
- *. MYD -数据文件
- *.MYI 索引文件
③ 设置数据库字符集编码:
1 | sql复制代码CHARTSET=UTF8 |
不设置的话,会是mysql默认的字符集编码-(不支持中文)
可以在my.ini中配置默认的编码
1 | sql复制代码character-set-server=utf8 |
1.5修改删除表
①修改:
1 | sql复制代码-- 修改表名 ALTER TABLE 旧表面 AS 新表名 |
② 删除:
1 | sql复制代码-- 删除表 |
所有的创建和删除操作尽量加上判断,以免报错
③注意点:
- `` 字段名,使用这个包裹
- 注释 – /**/
- sql 关键字大小写不敏感,建议写小写
- 所有的符号全部用英文
路漫漫其修远兮,吾必将上下求索~
如果你认为i博主写的不错!写作不易,请点赞、关注、评论给博主一个鼓励吧~hahah
本文转载自: 掘金