MySQL数据库——DDL基本操作

文章目录

前言

DDL 操作是与数据库结构相关的操作,它们不涉及实际的数据操作,而是用于管理数据库的结构和元数据。今天我将为大家分享关于MySQL数据库的DDL操作。

数据库操作

SQL 功能
show databases; 查看所有的数据库
create database if not exists 数据库名 charset/character=utf8; 创建数据库
use 数据库名; 选中数据库
drop database 数据库名; 删除数据库
alter database 数据库名 character set 编码; 修改数据库编码

查看已存在的所有数据库

show databases会将当前MySQL下的所有数据库给展示出来。其中 information_schema mysql performance_schema sys 是MySQL默认具有的数据库。

创建数据库

SQL这样创建数据库 create database 数据库名 (character set)/charset 编码格式;

sql 复制代码
create database test character set utf8;
show databases;

选中数据库

后面的表操作都需要先指定操作的是哪一个数据库,我们使用 use 数据库名 来选中数据库。这里我们讲到表操作的时候会为大家展示用法。

删除数据库

当我们需要删除某一个数据库的时候,使用 drop database 数据库名 来删除指定数据库。

sql 复制代码
drop database test;
show databases;

修改数据库编码

如果我们在创建数据库之后还想要修改数据库编码的时候就使用 alter database 数据库名 character set 编码 来进行操作。

sql 复制代码
alter database mydb1 character set GB2312;

表操作

表位于对应的数据库中,所以我们进行表操作的时候,必须使用 use 数据库名 来指定操作的是哪个数据库。

MySQL基础表操作

SQL语句 功能
create table 表名 (列名1 该列数据类型,列名2 该列数据类型); 创建表,同时指定列的数据类型
show tables; 显示该数据库下的所有表
show create table 表名; 显示该表的创建语句
desc 表名; 显示该表的结构
drop table 表名; 删除指定表

创建表

在创建表之前我们需要知道 MySQL 有哪些数据类型。

MySQL基本数据类型

当知道有什么数据类型的之后,我们就可以来创建表了。

sql 复制代码
use mydb1;
create table student(id int,name varchar(20));
show tables;

显示创建表时的语句

sql 复制代码
show create table student;

显示表结构

sql 复制代码
desc 表名;
sql 复制代码
desc student;

删除表

sql 复制代码
drop table 表名;
sql 复制代码
drop table student;
show tables;

修改表的结构

修改表的结构需要运用到 alter table 表名 操作

增加列

alter table 表名 add 列名 该列数据类型;

sql 复制代码
alter table student add gender varchar(10);
desc student;

修改列

alter table 表名 change 旧列名 新列名 新列数据类型;

sql 复制代码
alter table student change gender tel int;
desc student;

删除列

alter table 表名 drop 列名

sql 复制代码
alter table student drop tel;
desc student;

修改表名

rename table 表名 to 新表名;

sql 复制代码
rename table student to stu;
show tables;
相关推荐
我不会起名字32210 分钟前
MySQL 深分页 LIMIT 1000000 卡死:3 种改写与 4 组实测对比
mysql·性能优化·索引·分页·limit
Nturmoils20 分钟前
数据集成软件 KFS:多套业务库汇聚时,先把来源和口径理清
数据库
麦壳饼28 分钟前
SonnetDB:批量写入的大小、背压与刷新策略
数据库·sonnetdb
weixin_460443561 小时前
Java+Linux私有化训考平台:服务、数据库与终端部署结构解析
java·linux·数据库·私有化部署·企业培训考试系统·企业考试系统
编程火箭车2 小时前
MySQL 拥抱 AI:向量、RAG、AutoML 全进了数据库
数据库·mysql·ai编程·向量数据库·rag·automl·mysql9
o_oer2 小时前
mysql type
mysql
花卷持续成长2 小时前
慢SQL的整体优化思路
后端·mysql
用户8662978480082 小时前
KingbaseES 中文乱码、排序不对?区域和字符集的问题,一次说清
数据库
aruo2 小时前
回退旧镜像之前,先确认数据库还能兼容
数据库
张洛闻Eren2 小时前
Ansible【第三课】:管理变量和事实
数据库·oracle