【MySQL】库与表的操作

一、库的操作

1. 查看数据库

语法:show databases;这里的database是要加s

查看当前自己所处的数据库:select database();

例如下图,我当前所处的数据库就是在class1数据库

2. 创建数据库

语法:create database [if not exists] 数据库名;

注意这里的database不加s

创建数据库后,再查看数据库可以发现多了一个data1数据库

本质就是在/var/lib/mysql 路径下创建一个目录

当加上if not exists后,可以发现,如果已经存在了即将要创建的数据库,那就不再创建了

3. 删除数据库

语法:drop database 数据库名;

这里我们可以看到,刚刚创建的data1数据库不见了

本质就是把刚刚在/var/lib/mysql 路径下创建的目录删除

补充知识1:编码集,校验集

  1. 数据库编码集:数据库存储数据时使用的编码格式。
  2. 数据库校验集:数据库进行字段比较时使用的编码格式,本质上是一种读取数据库中数据采用的编码格式。

在数据库里进行任何操作(比如增删改查数据)时,操作涉及的「编码规则」必须保持一致。

讲一个小故事,便于理解这两个编码格式。

有一篇文章用 中文(编码集:GBK) 写成并存放在书架上(类比数据库存储)。

  1. 美国人(读取规则:英文编码)打开书,试图用英文解读每个字的笔画,结果看到的是一堆毫无意义的乱码(比如 "你" 字的二进制数据被英文编码解析成奇怪的符号)------读取规则(校验集)和存储规则(编码集)不匹配,数据 "失真"。
  2. 中国人(读取规则:中文编码)用同样的中文规则解读文字,顺利看懂了内容 ------读取规则和存储规则一致,数据正确呈现。
  3. 如果文章里同时有中文 "苹果" 和英文 "apple",用UTF-8 编码集书写,那么无论是中国人用中文读,还是美国人用英文读,都能正确识别各自的语言 ------通用编码集(如 UTF-8)能兼容多语言存储和读取。

4. 修改数据库

语法:alter database 数据库名 (加上想要修改的内容);

查看数据库当前 配置的指令:show create database 数据库名;

(看起来的含义像是查看创建数据库时的配置,但经过测试,实际上显示的是数据库当前配置)

便于修改数据库时做出参考
暂时省略,后面找时间做补充。

5.使用数据库

使用一个数据库,后续可以在目标数据库中做各种操作。

语法:use 数据库名;

例如:使用数据库后,创建表

二、表的操作

1. 增加表

语法:

powershell 复制代码
create table 表名(
	列名1 列类型,
	列名2 列类型,
	列名3 列类型
)character set 字符集 collate 校验规则 engine 存储引擎;
'注意:如果没有指定字符集 / 校验规则 / 存储引擎,则以所在数据库的默认为准'

示例:

powershell 复制代码
create table student(
	id int,
	name varchar(32) comment'姓名',
	gender varchar(2) comment'性别',
	age int comment'年龄'
);
'注意:在创建表的时候最后一列的结尾不要加逗号!!!,如上就是年龄列结尾不加逗号'

2. 查看表

(1)查看所有表

查看当前数据库中的所有表

语法:show tables;

(2)查看表结构

查看单个目标表的表结构

语法:desc 表名;

示例:

可以看到查看的表结构和刚刚创建的表结构是一致的

查看创建表时的详细信息:show create table 表名;

格式化显示:show create table 表名\G(把;替换成\G)

相关推荐
Estar.Lee1 小时前
MySQL中外键约束详解 外键在表关系维护中的作用
运维·数据库·mysql·api·免费api
灯琰12 小时前
五款MySQL 可视化客户端软件
数据库·mysql
两袖清风9982 小时前
【MySQL】三大范式
数据库·mysql
Wooden-Flute3 小时前
八、数据库恢复技术
服务器·数据库·oracle
南棱笑笑生3 小时前
20250611在全志H3平台的Nano Pi NEO CORE开发板上运行Ubuntu Core16.04时让4G模块EC200A-CN使用AT命令拨号上网
linux·数据库·ubuntu
文牧之4 小时前
PostgreSQL 的扩展pg_surgery
运维·数据库·postgresql
眠修5 小时前
MongoDB 数据库应用
数据库·mongodb
wh_xia_jun5 小时前
mybatis xml 配置中,jdbcType=VARCHAR 的作用
数据库·oracle·tomcat
程序猿小D6 小时前
第24节 Node.js 连接 MongoDB
数据库·mongodb·npm·node.js·编辑器·vim·express