《MySQL数据库从零搭建到高效管理|库的基本操作》

目录

一、数据库的操作

[1.1 展示数据库](#1.1 展示数据库)

[1.2 创建数据库](#1.2 创建数据库)

[1.3 使用数据库](#1.3 使用数据库)

[1.4 查看当前数据库](#1.4 查看当前数据库)

[1.5 删除数据库](#1.5 删除数据库)

[1.6 小结](#1.6 小结)

二、常用数据类型

[2.1 数值类型](#2.1 数值类型)

[2.2 字符串类型](#2.2 字符串类型)

[2.3 日期类型](#2.3 日期类型)


一、数据库的操作

打开MySQL命令行客户端,安装完MySQL后会有两个客户端,这两个客户端的区别是编码方式不同。建议使用 -Unicode这个客户端,该客户端使用的是utf8编码格式。

输入设置好的密码,就可以操作数据库了。


1.1 展示数据库

sql 复制代码
SHOW DATABASES;

注意:sql 的关键字是大小写不敏感的,使用大写或小写都可以。

使用该 sql 语句可以查看当前计算机中所有的数据库


1.2 创建数据库

sql 复制代码
CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset_name];

【说明】:

  • [ ] 是可选项。在写sql语句时可以带上[ ]里的内容也可以不带。
  • CHARACTER SET:指定数据库采用的字符集。注意:MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是使用utf8mb4,建议大家都使用utf8mb4。
  • IF NOT EXISTS 是指当计算机中不存在要创建的数据库时,允许创建。如果存在该数据库了,则不会继续创建,能避免在批量操作时因为报错而影响之后的 sql 语句。

1.3 使用数据库

sql 复制代码
use 数据库名;

这表示正在使用该数据库,可以在该库中进一步操作。


1.4 查看当前数据库

sql 复制代码
select database();

该sql语句可以查看我们当前正在使用的数据库名


1.5 删除数据库

sql 复制代码
DROP DATABASE [IF EXISTS] db_name;

此时,我们刚刚创建的 shop 数据库已经从计算机上删除。


1.6 小结

sql 复制代码
展示数据库
SHOW DATABASES;

创建数据库
CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset_name];

使用数据库
use db_name;

查看当前数据库
select database();

删除数据库
DROP DATABASE [IF EXISTS] db_name;

二、常用数据类型

2.1 数值类型

|--------------|------------|-------------------------------|--------------------------------|
| 数据类型 | 大小 | 说明 | 对应Java类型 |
| BIT[ (M) ] | M指定位数,默认为1 | 二进制数,M范围从1到64,存储数值范围从0到2^M-1 | 常用Boolean对应BIT,此时默认是1位,即只能存0和1 |
| TINYINT | 1字节 | | Byte |
| SMALLINT | 2字节 | | Short |
| INT | 4字节 | | Integer |
| BIGINT | 8字节 | | Long |
| FLOAT(M,D) | 4字节 | 单精度,M指定长度,D指定小数位数。会发生精度丢失 | Float |
| DOUBLE(M,D) | 8字节 | | Double |
| DECIMAL(M,D) | M/D最大值+2 | 双精度,M指定长度,D指定小数位数。精确数值 | BigDecimal |
| NUMERIC(M,D) | M/D最大值+2 | 双精度,M指定长度,D指定小数位数。精确数值 | BigDecimal |


2.2 字符串类型

|---------------|---------------|-------------|--------------|
| 数据类型 | 大小 | 说明 | 对应Java类型 |
| VARCHAR(SIZE) | 0~65535字节 | 可变长度字符串 | String |
| TEXT | 0~65535字节 | 长文本数据 | String |
| MEDIUMTEXT | 0~16777215字节 | 中等长度文本数据 | String |
| BLOB | 0~65535字节 | 二进制形式的长文本数据 | byte[ ] |


2.3 日期类型

|-----------|--------|----------------------------|-------------------------------------|
| 数据类型 | 大小 | 说明 | 对应Java类型 |
| DATETIME | 8字节 | 从1000年到9999年,不会进行时区的检索及转换 | java.util.Date 、 java.sql.Timestamp |
| TIMESTAMP | 4字节 | 从1970年到2038年,自动检索当前时区并进行转换 | java.util.Date 、 java.sql.Timestamp |


积跬步,以致千里

下章预告------> 表操作

本专栏内容均以 MySQL 8.0 为案例

相关推荐
hj104328 分钟前
记录一个SQL自动执行的html页面
数据库·sql
xjz184241 分钟前
MySQL 5.7 性能优化全攻略:从查询到配置的深度调优
mysql
用户62799471826241 分钟前
南大通用GBase 8s数据库包解析
数据库
四七伵43 分钟前
MySQL为什么会索引失效?十大常见场景及避坑指南
前端·mysql
TiDB_PingCAP1 小时前
TiDB 观测性解读(一)丨索引观测:快速识别无用索引与低效索
数据库·tidb·索引优化
用户5744823069141 小时前
MySQL数据库操作命令
mysql
人生不如初见2 小时前
解决进入Oracle11g的OEM显示网站不安全问题
数据库
颜淡慕潇2 小时前
【面试题系列】Redis 常见面试题&答案
数据库·redis·缓存
java1234_小锋2 小时前
一周学会Flask3 Python Web开发-使用SQLAlchemy动态创建数据库表
开发语言·数据库·python·flask·flask3
m0_748238423 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot