【MySQL】表的操作

创建表

bash 复制代码
create table table_name(
   field1 datatype,
   field2 datatype,
   field3 datatype
   )character set 字符集 collate 校验规则 engine 存储引擎;

field表示列名,datatype表示列的类型,character set 字符集,若没有指定字符集,则以所在所在数据库的字符集为准。

例:

bash 复制代码
create table users (
    id int,
    name varchar(20) comment '用户名',
    password char(32) comment '密码',
    birthday date comment '生日'
) engine=MyISAM charset=utf8;

不同存储引擎创建表的文件不一样。

users表存储引擎是MyISAM,在数据目录中有三个不同的文件,分别是:

users.firm:表结构

users.MYD:表数据

users.MYI:表索引

查看表结构

bash 复制代码
desc 表名;

修改表

bash 复制代码
alter table [tablename] add/modify (column datatype ...)
alter table [tablename] drop(column);

例:

在users表添加一个字段用来保存图片路径:

在users表中添加两条记录:

插入新字段后,对原来表中的数据没有影响。

修改name,将其长度改为60:

bash 复制代码
mysql> alter table users modify name varchar(60);

删除某一列:

修改表名:

to:可以省略

修改某一列:

bash 复制代码
alter table person change name xingming varchar(50);------------------新字段需要完整定义!!!

删除表:

bash 复制代码
drop [temporary] table [if exists] tb1_name[,tb_name]...

例:

相关推荐
code monkey.20 分钟前
【Linux之旅】Linux 应用层自定义协议与序列化:从粘包问题到网络计算器
linux·网络·c++
wgc2k21 分钟前
Node.js游戏服务器项目移植-2: 用TypeScript还是Javascript
服务器·游戏·node.js
草莓熊Lotso23 分钟前
【Linux网络】深入理解 HTTP 协议(二):从协议格式到手写工业级 HTTP 服务器
linux·运维·服务器·网络·c++·http
kisy夏1 小时前
多千帆运营平台
大数据·爬虫·mysql
上海云盾第一敬业销售1 小时前
服务器遭受攻击的应对策略及快速防护实践
运维·服务器·web安全·ddos
剑神一笑7 小时前
Linux pgrep 命令详解:按名称查找进程 PID 的高效方法
linux·运维·chrome
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题 第87题】【Mysql篇】第17题:分布式事务的实现原理?
java·数据库·分布式·mysql·面试
yyuuuzz7 小时前
独立站的技术基础与常见运维问题
大数据·运维·服务器·网络·数据库·aws
剑神一笑7 小时前
Linux killall 命令详解:按进程名批量终止进程的原理与实践
linux·运维·chrome
键盘上的猫头鹰10 小时前
【MySQL 教程(八)】索引、事务、用户管理、导入导出与分页查询
数据库·python·mysql