一、数据库的操作
在这之前,记得下载好MySQL哦~设置密码的时候记得设置一个简单的,千万不要忘记了!
这样就是登录成功咯。
① 显示数据库
📖 show databases:显示当前的数据库
② 创建数据库
📖 create database [数据库名]:创建新的数据库
像这样就代表成功创建了一个新的数据库了。
而创建数据库有些需要注意的细节问题,让我们来看一眼:
📕 当此时已经拥有该数据库,那么创建数据库就会失败:
而这种情况其实还是比较严重的,因为有时或许我们需要一次性进行多次操作,而中间因为这一个语句而导致全部操作都失败,这是很不好的。所以就有了相应的解决方案:
📖 create database if not exists [数据库名]:如果没有该数据库,则创建出这个数据库;如果存在该数据库,则不创建,但也不报错。
(1 warning 代表语句运行过程中,出现过一次错误)
📕 直接用该种语句创造的数据库,语法不支持"中文":
这是因为使用的MySQL为5.7版本,该版本下的默认字符集为 latin1 ,这种字符集是不支持中文字符的,因为它只能处理单字节字符,而使用中文需要更多的字节编码。那么我们可以通过一种语句来将创建的数据库的字符集进行修改
(下一篇文章我就会改成8.0版本,推荐大家也都使用8.0版本,8.0版本不仅速度更快,还有非常多的增强,并且MySQL8.0的默认字符集就是utf8mb4。据说MySQL5.7在2023年就结束了维护,肯定会慢慢退出历史的舞台的)
📖 create database [数据库名] charset utf8mb4:创建一个字符集为 utf8 的数据库。
这样就能够使用中文字符串了
③ 使用数据库
📖 use [数据库名]:使用指定数据库。
想要对数据库内部进行操作,就必须先 use 对应的数据库。
④ 删除数据库
📖 drop database if exists [数据库名]:删除数据库(危险操作,慎重!)
当然,这里的 if exists 想必大家也肯定认识了,这也是防止报错的,如果输错了数据库名,而系统中没有该数据库,也不会报错。
二、常用数据类型
① 数值类型
数据类型 | 大小 | 说明 | 对应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 | 和decimal一样 | BigDecimal |
② 字符串类型
数据类型 | 大小 | 说明 | 对应java类型 |
varchar(size) | 0~65535字节 | 可变长度字符串 | String |
text | 0~65535字节 | 长文本数据 | String |
mediumtest | 0~16777215字节 | 中等长度文本数据 | String |
blob | 0~65535字节 | 二进制形式的长文本数据 | byte[] |
③ 日期类型
数据类型 | 大小 | 说明 | 对应java类型 |
datetime | 8字节 | 范围从1000到9999年,不会进行时区的检索及转换 | java.util.Date java.sql.Timestamp |
timestamp | 4字节 | 范围从1970到2038年,自动检索当前时区并进行转换 | java.util.Date java.sql.Timestamp |
三、表的操作
(以下操作之前必须先选中一个数据库,也就是 use 数据库名)
① 查看表结构
📖 desc [表名]:查看对应的表结构
(我已经事先创建好了一个表)
📕 Field:字段名字
📕 Type:字段类型
📕 Null:是否允许为空
📕 Key:索引类型
📕 Default:默认值
📕 Extra:扩充
② 创建表
📖 语法:
create table table_name(field1 datatype,field2 datatype,field3 datatype,
);
还可以使用 comment 增加字段说明:
③ 删除表
📖 drop table [表名]:删除指定的表。
📖 drop table if exists [表名]:如果存在该表,则删除指定的表,如果不存在,则不删除。
四、Navicat Lite
Navicat Lite是业内广泛使用的可视化客户端工具,是比较实用的软件~
使用可视化客户端工具,不仅能使我们的sql语句更加具有可读性,并且还能编写多个sql语句,然后一次性将它们运行~
那么这篇关于MySQL的基础使用的文章到这里就结束啦,作者能力有限,如果有哪里说的不够清楚或者不够准确,还请各位在评论区多多指出,我也会虚心学习的,我们下次再见啦