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;
相关推荐
₍˄·͈༝·͈˄*₎◞ ̑̑码1 小时前
MyBatis操作数据库
数据库·mybatis
刃神太酷啦3 小时前
Redis 进阶核心:持久化 (RDB/AOF)、事务与主从复制全解析----《Hello Redis!》(5)
linux·c语言·数据库·c++·redis·缓存·bootstrap
丁丁点灯o3 小时前
Oracle中使用外键的场景及不适用外键的情况
数据库·oracle
天天进步20154 小时前
Pixelle-Video 源码解析 #18:声音克隆功能:参考音频如何影响解说效果?
数据库·音视频
不懂的浪漫4 小时前
ToDesk 连接 Linux 后分辨率过低的解决方法
linux·运维·数据库
布莱克6054 小时前
Redis 详解:从核心数据结构到高可用架构
数据库
冰暮流星5 小时前
mysql之左外连接与右外连接
数据库·sql
jyOverQ5 小时前
MySQL 联合索引怎么用?最左匹配原则到底是什么意思?
数据库·mysql
没文化的阿浩5 小时前
【MySQL】用户管理
android·mysql·adb
oradh5 小时前
Oracle enq: US - contention 等待事件总结
数据库·oracle