MySQL--表的操作

目录

创建表

查看表结构

修改表

新增列

修改列类型

修改列名

修改表名:

删除列

删除表


创建表

语法:

CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
说明
  • field 表示列名
  • datatype 表示列的类型
  • character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
  • 最后一个属性不用加   ,
  • 如果使用数据库默认的,最后一行括号后面的可以省略。
  • ENGINE用于指定表所采用的存储引擎。
  • COMMENT用于对指定列添加注释信息。

举例:

创建表user1

create table user1 (
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
) character set utf8 engine MyISAM;

创建表user2

create table user2 (
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
) character set utf8 engine innodb;

这是我们可以到目录:/var/lib/mysql/user1查看数据库内容

这里我们发现对于表users,users2它们的文件与后缀名是不一样的。

说明一下:

  • 采用不同的存储引擎,创建表时所产生的文件不一样。
  • 采用InnoDB存储引擎建表,会产生对应的xxx.frm(表结构)和xxx.ibd(表数据+表索引)文件。
  • 采用MyISAM存储引擎建表,会产生对应的xxx.frm(表结构)、xxx.MYD(表数据)和xxx.MYI(表索引)文件。

查看表结构

desc 表明;

这里我们查看users的表结构:

desc user1;

  • Filed:字段名字。
  • Type:字段类型。
  • Null:是否允许为空。
  • Key:索引类型。
  • Default:默认值。
  • Extra:扩充。

修改表

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

ALTER TABLE table_name ADD 新增列名 新增列的属性;

ALTER TABLE table_name MODIFY 列名 修改后的列属性;

ALTER TABLE table_name DROP 列名;

ALTER TABLE table_name RENAME [TO] 新表名;

ALTER TABLE table_name CHANGE 列名 新列名 新列属性;

这里为了较好的演示先在修改表中插入两条数据:

新增列

alter table 表名 add 列名 列属性  [after 列名/ not null first];

在user表中新增一列照片路径:

注意:

after password表示该列新增到password属性后面,如果想要将新增的列放到第一列,可以将after及其以后的换成not null first,如果没有after password这部分默认是将新增的列放到最后面。

如:新增grade列放到第一列,新增hobby列放到最后面:

修改列类型

alter table 表名 modify 列名 修改后的列属性;

这里我们将user表中的password列的类型由char(20)修改成char(50),如下:

注意:

如果需要修改类型后仍然保留comment字段,需要在修改时重新指定comment字段。

修改列名

alter table 表名 change 修改前的列名 修改后的列名 修改后的属性;

将user表中password列的列名改成passwd。如下:

修改表名:

alter table 修改前的表名 rename 修改后的表名;

将user表修改成employee。

删除列

alter table 表名 drop 删除列;

将employee表中的path列删除

删除表

DROP [TEMPORARY] TABLE [IF EXISTS] table_name;
  • 在创建表时加上TEMPORARY关键字,那么服务器将创建出一个临时表,该表会在你的服务器会话终止时自动消失。
  • TEMPORARY表的名字可以与某个已有的永久表相同,当有TEMPORARY表存在时,对应的永久表会隐藏起来(即无法访问)。
  • 为了避免重新连接后(TEMPORARY已经不存在),在未做检测的情况下调用DROP误删了对应的永久表,因此在使用DROP删除表时需要带上TEMPORARY关键字。

将employee表删除:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Entity Framework】聊一聊EF如何使用数据库函数

【Entity Framework】聊一聊EF如何使用数据库函数 文章目录 【Entity Framework】聊一聊EF如何使用数据库函数一、数据库函数的类型二、内置函数与用户定义的函数四、聚合函数、标量函数和表值函数五、Niladic函数六、EF Core 中的数据库函数映射6.1 内置函数映射6.2 EF.Functi…

请编写一个函数void fun(char*ss),其功能是:将字符串ss中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

本文收录于专栏:算法之翼 https://blog.csdn.net/weixin_52908342/category_10943144.html 订阅后本专栏全部文章可见。 本文含有题目的题干、解题思路、解题思路、解题代码、代码解析。本文分别包含C语言、C++、Java、Python四种语言的解法完整代码和详细的解析。 题干 请编…

mPEG-Dansyl,Methoxy PEG Dansyl由甲氧基-聚乙二醇(mPEG)和丹磺酰氯(Dansyl)两部分组成

【试剂详情】 英文名称 mPEG-Dansyl,Methoxy PEG Dansyl 中文名称 聚乙二醇单甲醚丹磺酸酯,甲氧基-聚乙二醇-丹磺酰胺 外观性状 由分子量决定,液体或者固体 分子量 0.4k,0.6k,1k,2k,3.4k…

Fisher 准则分类

目录 一、什么是Fisher 准则 二、具体实例 三、代码实现 四、结果 一、什么是Fisher 准则 Fisher准则,即Fisher判别准则(Fisher Discriminant Criterion),是统计学和机器学习中常用的一种分类方法,由统计学家罗纳…

JuliaImages教程(二):图像分割

1、介绍 图像分割是将图像划分为具有相似属性的区域的过程。图像分割具有多种应用,例如医学图像分割、图像压缩,并用作对象检测和光流等更高级别视觉任务中的预处理步骤。该包是用 Julia 编写的图像分割算法的集合。 2、安装 Pkg.add("ImageSegm…

软件测试面试题(二)

Web 测试.web 测试描述用浏览器访问 www.baidu.com 的过程以京东首页为例,设计用例框架。(注意框架设计逻辑,区域划分,专项测试等,不需 要详细用例,需要查看 PC 可直接和辨识管提要求)如何测试购…

Java Web 网页设计(1)

不要让追求之舟停泊在幻想的港湾 而应扬起奋斗的风帆 驶向现实生活的大海 网页设计 1.首先 添加框架支持 找到目录右键添加 找到Web Application选中 点击OK 然后 编辑设置 找到Tomcat--local 选中 点击OK 名称可以自己设置 找到对应文件夹路径 把Tomcat添加到项目里面 因为…

C++之通俗易懂学模版

目录 一、了解什么是泛性编程 二、模版 1.函数模版 1.1 函数模板概念 1.2 函数模板格式 1.3 函数模板的原理 1.4 函数模板的实例化 1.5 模板参数的匹配原则 2.类模板 2.1 类模板的定义格式 2.2 类模板的实例化 3. 非类型模板参数 4. 模板的特化 4.1 概念 4.2 …

Visual Studio调试C/C++指南

1. 前言 Visual Studio(VS)是微软开发的一款集成开发环境(IDE)软件,支持C/C、C#、VB、Python等开发语言,开发桌面、Web等应用程序。VS功能极其强大,使用极其便利,用户数量最多,被誉为"宇宙…

Python 基础 (Pandas):Pandas 入门

1. 官方文档 API reference — pandas 2.2.2 documentation 2. 准备知识:Pandas 数据结构 Series & DataFrame 2.1 Series 2.1.1 创建 Series 类型数据 一个 Series 对象包含两部分:值序列、标识符序列。可通过 .values (返回 NumPy ndarry 类型…

C语言扫雷游戏完整实现(下)

文章目录 前言一、排雷函数菜单二、排雷函数菜单的实现三、拓展棋盘功能四、源码1. test.c源文件2. game.h头文件3. game.c源文件 总结 前言 C语言实现扫雷游戏的排雷菜单,以及功能的实现,拓展棋盘功能,以及源码等。 上半部分的链接地址: C语…

第十五届蓝桥杯省赛第二场PythonB组B题【逆序对期望】题解(AC)

解题思路 枚举所有的可能的交换情况,时间复杂度 O ( n 4 ) O(n^4) O(n4)。 用归并排序计算数组的逆序对,时间复杂度 O ( n ) O(n) O(n)。 综上时间复杂度 O ( n 5 ) O(n^5) O(n5)。 由于 Python 运行效率较低,约 500 500 500 秒可得到…

前端框架技术调研

目前程序员使用前端框架最多的是哪一个?

SEGGER Embedded Studio IDE移植FreeRTOS

SEGGER Embedded Studio IDE移植FreeRTOS 一、简介二、技术路线2.1 获取FreeRTOS源码2.2 将必要的文件复制到工程中2.2.1 移植C文件2.2.2 移植portable文件2.2.3 移植头文件 2.3 创建FreeRTOSConfig.h并进行配置2.3.1 处理中断优先级2.3.2 configASSERT( x )的处理2.3.3 关于系…

echarts树图-实现拓扑图效果

使用echarts树图来实现拓扑图效果,其效果如下: 代码如下: const data {name: XXX公司,children: [{name: 网络主机,children: [{name: 普通路由器,children: [{name: 智能网关},{name: 192.168.1.0/24}]}]},{name: 企业路由器},{name: 三…

【分享】WinRAR软件如何压缩文件?

WinRAR是一款功能强大的压缩文件管理工具,支持多种压缩文件格式,那如何使用WinRAR来压缩文件呢?不清楚的小伙伴一起来看看吧! 压缩方法: 首先,安装好WinRAR工具,然后选中需要压缩的文件或文件夹…

C++高级特性:异常概念与处理机制(十四)

1、异常的基本概念 异常:是指在程序运行的过程中发生的一些异常事件(如:除数为0,数组下标越界,栈溢出,访问非法内存等) C的异常机制相比C语言的异常处理: 函数的返回值可以忽略&…

麒麟龙芯loongarch64 electron 打包deb包

在麒麟龙芯(loongarch64)电脑上 使用electron 开发桌面应用。之前用electron-packager 打包出来的是文件夹 是 unpack 包。现在需要打包deb包,依据开发指南开始打包。 在项目文件夹下 打开终端 输入 npm run packager 先打包unpack包 然后…

FreeRTOS:3.消息队列

FreeRTOS消息队列 本文主要基于消息队列的源码进行分析,来对FreeRTOS的消息队列进一步学习。 消息队列非常重要,因为后面的各种信号量基本都是基于队列的,搞清楚消息队列的源码,也就搞清楚消息队列的原理。 参考链接&#xff1…

188页 | 2023企业数字化转型建设方案(数据中台、业务中台、AI中台)(免费下载)

1、知识星球下载: 如需下载完整PPTX可编辑源文件,请前往星球获取:https://t.zsxq.com/19KcxSeyA 2、免费领取步骤: 【1】关注公众号 方案驿站 【2】私信发送 【2023企业数字化转型建设方案】 【3】获取本方案PDF下载链接&#…