MYSQL结构操作DDL指令2.表操作

在数据库中实际存储数据需要建立表,表就是对数据的格式的定义,创建了表,数据都得按照表中的格式进行存取

表创建

表是属于某一个数据库的,所以在创建表之前需要先进入对应的数据库

复制代码
use db_name;

查看当前所在数据库

复制代码
select database();

进入到对应数据库中输入一下指令

复制代码
create table if not exists table_name(
name varchar(20) comment '姓名',
age int comment '年龄',
gender varchar(2) '性别'
)charset=utf8 collate utf8 engine InnoDB;

这个是创建一个包含个人信息的表

name,age,gender是对表中一列起名字,是表中的一个字一个属性。

varchar int是以后输入数据时对应的数据类型,括号内的是其长度

comment后面加对此字段的描述

查看表

查看当前数据中的所有表

复制代码
show databases;

表中数据插入

表创建好就可向其按照对应格式插入数据。以上表为例

复制代码
insert into table_name (name,age,gender) values ('张三',18,'男');

中间的(name,age,gender)可以省略,省略代表全部属性都插入按照格式。

修改表名

复制代码
alter table table_name rename to newtable_name;

数据库中一般都是在创建时就要考虑好后续尽可能的不要进行修改结构类操作。修改后可能导致某些程序在用旧的名字导致程序出错。还有一些如列的新增删除就举例了,下面放两行代码

列新增

复制代码
alter table newtable_name add image_path varchar(128) comment '个人头像路径' after gender;

这条指令是在gender属性后面添加一个字段名为image_path的列用于存放个人头像的路径

删除列

复制代码
alter table newtable_name drop image_path;

这条指令是删除表中名为image_path的字段连同对应的数据。

查看表的详细信息

复制代码
desc newtable_name;

可以查看表的所有字段信息

查看表创建的信息

复制代码
show create table newtable_name\G

指令中的\G用于代替;可以进行格式化输出,;可以不省略。

修改列

修改列就是将这列的全部属性进行覆盖,如上图 name中有varchar(20) DEFAULT NULL COMMENT等属性,当修改后会进行覆盖之前的。

修改列中的数据类型

复制代码
alter table newtable_name modify name varchar(50);

将姓名本来是20的长度改为50,comment也会被覆盖,所以一定要修改要将后面的属性都给加上

修改列名

复制代码
alter table change name xingming varchar(20) DEFAULT NULL COMMENT '姓名';

如上面修改类型一样是覆盖的所以需要加上本来就有的属性字段。这里将名字改为xingming

删除表

复制代码
drop newtable_name;
相关推荐
jiayou6418 小时前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北19 小时前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤2 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12023 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区3 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1773 天前
《从零搭建NestJS项目》
数据库·typescript
加号33 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏3 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐3 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再3 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip