MySQL表结构的操作

文章目录

    • [1. 创建表](#1. 创建表)
    • [2. 查看表](#2. 查看表)
    • [3. 修改表](#3. 修改表)
    • [4. 删除表](#4. 删除表)

1. 创建表

mysql 复制代码
create table table_name (
	field1 datatype,
    field2 datatype,
    field3 datatype
)character set 字符集 collate 校验集 engine 存储引擎;
  • field:列名
  • datatype:列的类型
  • character set:字符集(没有指定以所在数据库字符集为准)
  • collate:校验规则(没有指定以所在数据库校验集为准)

++示例(两种引擎存储):++

mysql 复制代码
mysql> create table if not exists user_1(
    -> id int,
    -> name varchar(20) comment '用户名',
    -> password char(32) comment '密码',
    -> birthday date comment '生日'
    -> )character set utf8 collate utf8_general_ci engine MyIsam;
Query OK, 0 rows affected (0.00 sec)

mysql> create table if not exists user_2(
    -> id int, 
    -> name varchar(20) comment '用户名',
    -> password char(32) comment '密码',
    -> birthday date comment '生日'
    -> )charset=utf8 collate=utf8_general_ci engine=InnoDB;
Query OK, 0 rows affected (0.02 sec)

不同引擎存储,创建的文件不一样:

2. 查看表

确认当前所在数据库:

mysql 复制代码
select database();

查看表:

mysql 复制代码
show tables;

查看表的详细信息:

mysql 复制代码
desc table_name;

查看创建表的详细信息:

mysql 复制代码
show create table table_name;

\G以更易读的垂直格式显示,每行一个字段

mysql会记录用户的操作痕迹,所以我们可以查到我们当初建表的信息

当然,这里和我们当时的指令有一点出入,这是mysql会在内部做语法词法分析,更加标准化

3. 修改表

修改表名:

mysql 复制代码
alter table user_1 rename to table_name;

to可省略

也可以修改列名称:

mysql 复制代码
alter table table_name change name new_name datatype; 

插入数据:

mysql 复制代码
insert into table_name values (xx, xxx);

添加字段:

mysql 复制代码
alter table user1 add gender varchar(2) comment '性别' after birthday;

after指定在哪个属性后面

修改属性:

mysql 复制代码
alter table user1 modify name varchar(60) comment '用户名2.0';

新的属性直接覆盖,要加上comment定义描述性注释

删除列:

mysql 复制代码
alter table user1 drop birthday;

该列数据会全部清楚

4. 删除表

mysql 复制代码
drop table table_name;

不要轻易进行修改和删除操作!!!,这些在业务当中都是比较靠近底层的,这些表结构、表名等,就直接影响了上层。

相关推荐
两点王爷28 分钟前
PostgreSQL 常用 SQL 语句与 GIS 相关函数详解
数据库·后端
两点王爷37 分钟前
PostgreSQL 好用又独特的特性与空间函数
数据库
梦帮科技40 分钟前
AI 音乐产品的发布工程:验证门、数据发布、回滚与生产运维纪律
数据结构·数据库·架构·node.js·音视频·动态规划·推荐算法
TDengine (老段)2 小时前
TDengine 常见问题 TOP3
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
Lucifer三思而后行4 小时前
Oracle SQL 优化实战:明明走了索引,SQL 还是慢?
sql·oracle
螺蛳粉 螺蛳粉5 小时前
MySQL 分布式集群系列 · 第五篇——全方位对比:NDB、MGR、主从复制、分库分表怎么选?
数据库·分布式·mysql
泡泡鱼(敲代码中)7 小时前
MySQL 学习笔记:DCL、函数与约束 —— 安全、效率、完整性的三板斧
开发语言·笔记·sql·学习·mysql·gitee
这个DBA有点耶9 小时前
从OLTP到OLAP到HTAP:数据库负载分类的技术演进与选型指南
数据库·mysql·架构
YangYang9YangYan10 小时前
商业数据分析校招项目怎么选,附项目设计与简历包装思路
大数据·数据库·数据分析
李白客11 小时前
数据库培训怎么选?零基础到DBA的学习路线与机构认证对比(2026)
数据库·学习