Mysql-02数据库类型与约束、操作

五、数据库类型与约束

为了更加准确的存储数据,保证正确的数据有效,需要合理的使用数据类型和约束来限制数据的存储

5.1、常用数据类型

  1. 整数:int

    有符号范围(-2147483648 -214748637),无符号(unsigned),范围(0-4294967295)

  2. 小数:decimal

    例如:decimal(5,2)表示共存 5 位数,小数占 2 位,整数占 3 位

  3. 字符串:varchar
    范围(0~65533),例如:varchar(3) 表示最多存 3 个字符,一个中文或一个字母都占一个字符

  4. 日期时间:datetime
    范围:(1000-01-01 00:00:00~9999-12-31 23:59:59),例如:2022-03-16 22:56:30

5.2、约束

  1. 主键(primary key): 能唯一标识表中的每一条记录的属性组
    在这里插入图片描述

  2. 非空(not null): 此字段不允许填空值

  3. 唯一(unique): 此字段的值不允许重复

  4. 默认值(default): 当不填写此值时会使用默认值,如果填写时以填写为准
    在这里插入图片描述

  5. 外键(foreign key): 一个表中的资格字段引用另一个表的主键

六、数据库的操作

目标

学会使用 SQL 语句实现数据库的创建、使用、修改、删除操作

6.1、主要操作

➢ 创建数据库

➢ 使用数据库

➢ 修改数据库

➢ 删除数据库

6.2、创建数据库

语法格式

# 创建数据库
create database 数据库名 [charset] [字符编码] [collate] [校验规则];
# 创建结果查看
show create database 数据库名;

举例说明

# 创建一个叫 python 的数据库:
create database python charset=utf8 collate=utf8_general_ci;
# 查看创建结果
show create database python;

在这里插入图片描述

6.3、使用数据库

语法格式

# 使用(打开)数据库
use 数据库名;
# 查看当前使用的数据库
select database();

举例说明

# 使用(打开)数据库
use python;
# 查看当前使用的数据库,database()是 sql 的内置函数,括号不能省略!
select database();

在这里插入图片描述

6.4、修改数据库

语法格式

alter database [数据库名]
[default] character set <字符集名>
[default] collate <校对规则名>;

举例说明

# 创建 testpython 数据库,字符集为 gb2312
create database testpython charset=gb2312;
# 修改 testpython 的指定字符集修改为 utf8mb4,默认校对规则修改为 utf8mb4_genral_ci
alter database testpython;
default character set utf8mb4;
default collate utf8mb4_general_ci;

6.5、删除数据库

语法格式

drop database 数据库名;

举例说明

# 删除 python 数据库
drop database python;

6.6、查看所有数据库

语法格式

show databases;

◆ 备份数据库

在测试工作中,为了防止对数据库产生错误操作,或产生垃圾数据,都需要在操作前,适当对数据库进行备份操作。(垃圾数据:例如在自动化测试中,对注册模块生成的所有数据,属于典型的垃圾数据)

备份方式:

  1. 使用 navicat 工具实现
    在这里插入图片描述
    在这里插入图片描述

  2. 使用命令实现

注意:命令是不需要连接数据库以后执行的

mysqldump -uroot -p 数据库名 > python.sql
# 按提示输入 mysql 的密码

◆ 恢复数据库

两种方式:

  1. navicat 连接软件对备份的数据进行恢复

在这里插入图片描述
在这里插入图片描述

  1. 命令行实现
mysql -uroot -p 数据库名 < 备份名.sql
# 根据提示输入 mysql 密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值