【半夜学习MySQL】表结构的操作(含表的创建、修改、删除操作,及如何查看表结构)

在这里插入图片描述

🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。
🎯每天努力一点点,技术变化看得见

文章目录

  • 创建表
  • 查看表结构
  • 修改表
  • 删除表


创建表

语法:

create table table_name(field1 datatype,field2 datatype,field3 datatype
)charset=字符集名称 collate=校验规则名称 engine=存储引擎名称

说明:
● filed表示列名
● datatype表示列的类型
● charset(写成character set也可以)字符集,如果没有指定字符集,则以所在数据库的字符集为准
●collate校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
●engine存储引擎,如果没有指定存储引擎,则以所在数据库的存储引擎为准

创建表案例:
案例: 创建一个学生表,其中包含学号、姓名、性别。
在这里插入图片描述
上述的charset、collate、engine后面可以不跟’=',可以直接对应的取值,如下图所示↓↓↓
在这里插入图片描述
上述的charset还可以写成character set,且各属性之间可以选择使用空格间隔,也可以选择使用逗号间隔↓↓↓
在这里插入图片描述
★ps:不同的存储引擎创建的表的文件是不一样的↓↓↓
在这里插入图片描述
其中student和student_copy表的存储引擎是InnoDB,在数据库目录中各有两个不同的文件:以.frm结尾的是表结构,以.ibd结尾的是表索引。
而student_recopy表的存储引擎是MyISAM,在数据库目录中有三个不同的文件:以.frm结尾的是表结构,以.MYD结尾的是表数据,以.MYI结尾的是表索引。
关于什么是索引,及存储引擎的具体差异,将于后序文章中介绍,这里先了解:不同的存储引擎在具体存储时存在一定的差异

查看表结构

上文使用的show create table [表名称] \G虽然能够查看表的创建语句,但无法清晰明了的展现表的各个细节。

如果想查看表的各个细节,可以使用如下指令↓↓↓

desc 表名称;

在这里插入图片描述

修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

表添加字段语法:

alter table table_name add(column datatype [default expr][,column datatype]...);

表删除字段语法:

alter table table_name drop(column [,column]...);

表修改字段属性(不修改字段名称)语法:

alter table_name modify(column datatype [default expr][, column datatype]...);

表修改字段属性(可修改字段名称)语法:

alter table tabel_name change 原字段名称 新字段名称 [default expr];

表名称修改语法:

alter table 原表名称 rename to 新表名称;

修改表案例:
案例1: 给student表添加年龄字段,并添加在姓名之后

alter table student add age int after name;

在这里插入图片描述
案例2: 给student插入3条数据后,在所有字段之后添加birthday字段

insert into student values('0001','小明',18,'男');
insert into student values('0002','小菜',19,'男');
insert into student values('0003','小树',23,'男');
select * from student;

在这里插入图片描述

alter table student add dirthday date;

在这里插入图片描述
★ps:从上面可知,由于添加字段,原来的数据中没有新增字段的数据,这些位置会被填写Defaut数值。原来的数据并不会受到影响。
案例3: 将student表中的name字段varchar长度修改为64

alter table student modify name varchar(64);

在这里插入图片描述
案例4: 删除age字段
在这里插入图片描述
★ps:删除字段一定要小心,删除字段及其对应的列数据都没了

案例5: 修改student表表名为stu
在这里插入图片描述
★ps:rename语句中,to可以省略

案例6: 修改gender字段名为sex
在这里插入图片描述

删除表

语法:

drop [temporary] table [if exists] table_name [,table_name]...

下图演示了删除stu表↓↓↓
在这里插入图片描述

🎈欢迎进入半夜学习MySQL专栏,查看更多文章。
如果上述内容有任何问题,欢迎在下方留言区指正b( ̄▽ ̄)d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/12377.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JWT令牌技术实现登录校验

一.简单登录功能 在登录界面中,我们可以输入用户的用户名以及密码,然后点击 "登录" 按钮就要请求服务器,服务端判断用户输入的用户名或者密码是否正确。如果正确,则返回成功结果,跳转至系统首页面。 1.功能…

[笔试训练](二十二)064:添加字符065:数组变换066:装箱问题

目录 064:添加字符 065:数组变换 066:装箱问题 064:添加字符 添加字符_牛客笔试题_牛客网 (nowcoder.com) 题目: 题解: 枚举所有A,B字符串可能的对应位置,得出对应位置不同字符数量的最小情况 两字符串的字符数量差n-m&…

springboot月度员工绩效考核管理系统

摘要 本月度员工绩效考核管理系统采用java语言做为代码编写工具,采用mysql数据库进行系统中信息的存储与处理。框架采用springboot。 本系统的功能分为管理员和员工两个角色,管理员的功能有: (1)个人中心管理功能&am…

“Linux”目录结构and配置网络

了解完命令格式和vi、vim编辑器后,我们来认识一下目录的结构: 一、目录 (1)目录的特点 windows特点: Windows中有C、D、E盘,每个都是一个根系统 Linux特点: linux中只有一个根(单…

冯喜运:5.14黄金大幅度修正?原油价格下跌成拖累?

【黄金消息面分析】:本周重要的美国数据的发布可能会对美元以及黄金产生重大影响。周四将公布更多经济指标,包括新屋开工和许可证、费城联储指数、工业生产数据和每周初请失业金人数。对于黄金而言,人们的注意力集中在经济和劳动力市场疲软对…

DRF 纯净版创建使用

【一】介绍 (1)使用原因 在Django中,contrib 包包含了许多内置的app和中间件,如auth、sessions、admin等,这些app在创建新的Django项目时默认是包含在内的。然而,在开发RESTful API时,可能不需…

jenkis

文章目录 安装插件配置构建超时自动停止 安装插件 在线安装:安装jenkins后,初次启动的时候安装插件 在线安装:插件管理,可选插件中 离线安装:下载插件(.hpi格式) 使用该方法安装插件每次只能安装一个插件,…

基于RTL8710BN与天猫精灵的WIFI智能家居方案

0 项目简介 目的: 语音控制智能家居产品 基于阿里云的物联网产品 基于WiFi技术的嵌入式产品 主要技术: WiFi技术 常用的物联网协议 网络编程 云平台配置 MCU OPENSDK开发 阿里物联网操作系统 硬件: wifi开发板RTL8710BN 天猫精灵…

大数据可视化实验(五):Tableau数据可视化

目录 一、实验目的... 1 二、实验环境... 1 三、实验内容... 1 1)打开数据源... 1 2)进入工作簿... 2 3)字段设置... 2 4)数据筛选... 3 5)绘制条形图... 3 四、思考问题... 4 五、总结与心得体会... 4 一、…

5月14(信息差)

🌍字节携港大南大升级 LLaVA-NeXT:借 LLaMA-3 和 Qwen-1.5 脱胎换骨,轻松追平 GPT-4V Demo 链接:https://llava-next.lmms-lab.com/ 🎄阿里巴巴开源的15个顶级Java项目 ✨ 欧洲在线订餐服务Takeaway.com&#xff1a…

JavaScript中带日期的操作

当我们把日期转换为Number类型的时候,就会变成时间戳(毫秒) const future new Date(2037, 10, 19, 15, 23); console.log(Number(future)); // console.log(future); //与上行代码等效● 所以我们就可以利用时间戳去做点东西,例…

GPT-4o:融合文本、音频和图像的全方位人机交互体验

引言: GPT-4o(“o”代表“omni”)的问世标志着人机交互领域的一次重要突破。它不仅接受文本、音频和图像的任意组合作为输入,还能生成文本、音频和图像输出的任意组合。这一全新的模型不仅在响应速度上达到了惊人的水平&#xff0…

qt cmake加入程序exe图标

可以看到qt自动编译出来的图标是默认的,如下图所示 我想要更改成自定义的图标,比如下方的样子 下边是操作步骤: 图标选择与转化成ico 通过这个网站将正常图片转化成ico:https://www.bitbug.net/创建rc文件 将ico复制到cmakelis…

短视频拍摄+直播间搭建视觉艺术实战课:手把手场景演绎 从0-1短视频-8节课

抖音短视频和直播间你是否遇到这些问题? 短视频是用手机拍还是相机拍?画面怎么拍都没有质感 短视频产量低,拍的素材可用率低 看到别人用手机就能把短视频拍好自己却无从下手 明明已经打了好几盏灯了,但是画面还是比较暗 直播软件参数不会设置,电脑…

纯电动汽车的发展趋势简述

纯电车简介 纯电动汽车是使用电池驱动电动马达而不是传统的内燃机的汽车。它们通常使用电池组储存能量,然后通过电动马达转化为动力来驱动车辆。相比于传统的燃油车,纯电动汽车具有零排放、低噪音、低维护成本等优点,因此在环保和能源效率方…

数据新探:用Python挖掘互联网的隐藏宝藏

Hello,我是你们的阿佑,今天给大家上的菜是——数据存储!听起来枯燥无味?错了!阿佑将带你重新认识数据存储的艺术。就像为珍贵的艺术品寻找完美的展览馆,为你的数据选择合适的存储方式同样重要! …

版本控制:软件开发的基石(一文读懂版本控制)

未经允许,禁止转载! 在现代软件开发中,版本控制是不可或缺的工具。它帮助开发者跟踪和管理代码的变化,协作完成项目,并确保代码的完整性和安全性。本文将基于Git官网的视频“什么是版本控制”来深入探讨版本控制的基本…

Linux实验 vi编辑器的使用与磁盘管理

实验目的: 掌握vi编辑器的启动、保存和退出;掌握vi编辑器的三种工作模式的转换及输入模式下的操作;了解Linux文件系统类型、虚拟文件系统和存储设备的名称;掌握磁盘文件系统的挂载和卸载;掌握常用磁盘操作命令&#x…

C. Sort Zero

题目描述 思路分析: 记住他是要保证这个数列是不降的,也就是说如果某一个位置上的数变成了0,那么这个数前面的部分一定全都是0了,我们用map数组得到每一个数出现的最晚的位置,先从后向前遍历一遍,找出从哪开始出现了递减,然后标记下来结束即可,看看前面的每一个数都要用st标记是…

关于nvm管理node版本的一些问题

背景: 基于开发项目的迭代不能做到全部更新,有的项目是vue2.0 有的项目是vue3.0, 那么我们开发的时候就需要对node 进行更新,进而产生因为版本不同导致的错误:由此我们需要一款管理 切换node版本的东西,那就…