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;
相关推荐
AAA修煤气灶刘哥3 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界4 小时前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RestCloud7 小时前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api
RestCloud7 小时前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术10 小时前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
xiaok11 小时前
mysql中怎么创建一个可控权限数据库账号密码给到开发者
mysql
可涵不会debug14 小时前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom14 小时前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
玉衡子14 小时前
九、MySQL配置参数优化总结
java·mysql
麦兜*14 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud