[MySQL初阶]MySQL表的操作

MySQL表的操作

  • 1. 创建表
  • 2. 查看表结构
  • 3. 修改表(修改表的属性而非表的数据)
  • 4. 删除表


1. 创建表

语法:

CREATE TABLE table_name (field1 datatype,field2 datatype,field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;注意:
character set 字符集 collate 校验规则 engine 存储引擎; 这块有很多种写法。varchar类型:变长字符串
comment:类似于注释

说明:
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

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

说明:

不同的存储引擎,创建表的文件不一样。
此处例子中,users 表存储引擎是MyISAM ,在数据目中有三个不同的文件,分别是:
users.frm:表结构
users.MYD:表数据
users.MYI:表索引

在这里插入图片描述
使用MyISAM存储引擎的时候,可以发现在mysql目录下,会有三个文件。
MyISam:默认在指定的database中形成的数据库文件是3个。


2. 查看表结构

mysql > desc 表名;
显示表结构的最核心内容

在这里插入图片描述

mysql > show create table 表名;
显示表结构的整体和整体结构以及创建表的过程

在这里插入图片描述
允许为空的含义是:birthday这个可以插入的时候为空
Default:不插入该值的时候默认设置一个值


3. 修改表(修改表的属性而非表的数据)

修改表的属性而非表的数据:比如表中属性增加一个,增加一个name或birthday等。表结构轻易不要修改——不然很可能会出问题(表的一整列删除掉,原本的这些信息全都没有了或是添加一整列 然后再添加该项数据很麻烦)。

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

ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]...);ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,column datatype]...);ALTER TABLE tablename DROP (column);

在这里插入图片描述
修改表结构后为:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

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

mysql> alter table users modify name varchar(60);

删除password列:

注意:删除字段一定要小心,删除字段及其对应的列数据都没了

mysql > alter table users drop password;
mysql > desc users;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(60) | YES | | NULL | |
| birthday | date | YES | | NULL | |
| assets | varchar(100) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+

修改表名为employee

mysql > alter table users rename to employee;mysql > select * from employee;
+------+------+------------+-------+
| id | name | birthday | assets |
+------+------+------------+-------+
| 1 | a | 1982-01-04 | NULL |
| 2 | b | 1984-01-04 | NULL |
+------+------+------------+-------+

注意: to可以省掉。

将name列修改为xingming

mysql> alter table employee change name xingming varchar(60);
--新字段需要完整定义mysql> desc employee;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| xingming | varchar(60) | YES | | NULL | |
| birthday | date | YES | | NULL | |
| assets | varchar(100) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+

修改表的DDL:

alter table 表名 add/modify/drop+列属性
alter table 表名 rename 新的名字
alter table 表明 change 旧列的名字 新列的名字 新列+新列的属性

4. 删除表

语法格式:

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

示例:

drop table test;

尽量不要删表,删表之前要做备份。

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

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

相关文章

sqlalchemy详细介绍以及使用方法

SQLAlchemy是一个Python的ORM(对象关系映射)工具,它允许开发者使用Python代码来操作数据库而不必直接编写SQL语句。SQLAlchemy提供了一种抽象层,使开发者可以通过简单的Python对象来表示数据库表和记录,从而实现对数据…

图解AUTOSAR_SWS_LINDriver

AUTOSAR LIN驱动详解文档 基于AUTOSAR标准的本地互联网络(LIN)驱动程序技术规范解析 目录 1. 概述 1.1 AUTOSAR LIN驱动简介1.2 LIN协议基础2. LIN驱动架构 2.1 类图结构2.2 状态机设计3. LIN帧结构 3.1 基本帧组成3.2 PID结构4. LIN驱动配置 4.1 主要配置参数4.2 配置结构5. L…

《网络管理》实践环节03:snmp服务器上对网络设备和服务器进行初步监控

兰生幽谷,不为莫服而不芳; 君子行义,不为莫知而止休。 应用拓扑图 3.0准备工作 所有Linux服务器上(服务器和Agent端)安装下列工具 yum -y install net-snmp net-snmp-utils 保证所有的HCL网络设备和服务器相互间能…

2025年内外网文件交换系统排名分析

在时代,企业的日常运营离不开内外网文件的交换。然而,传统的文件传输方式难以满足企业对多方面的要求。以下是一些备受关注的内外网文件交换系统及其排名分析。 第一名:阳途内外网文件交换系统 阳途内外网文件交换系统是一款专为解决内外网…

【Centos】centos7内核升级-亲测有效

相关资源 通过网盘分享的文件:脚本升级 链接: https://pan.baidu.com/s/1yrCnflT-xWhAPVQRx8_YUg?pwd52xy 提取码: 52xy –来自百度网盘超级会员v5的分享 使用教程 将脚本文件上传到服务器的一个目录 执行更新命令 yum install -y linux-firmware执行脚本即可 …

Qt进阶开发:QDirModel的使用

文章目录 一、QDirModel的基本介绍二、QDirModel的基本使用2.1 在 QTreeView 中显示文件系统2.2 在 QListView 显示当前目录2.3 在 QTableView 中使用 三、QDirModel的常用API1. 构造 & 目录操作1.1 创建 QDirModel1.2 设置根目录 2. 过滤 & 排序2.1 过滤文件类型2.2 设…

牛客 除2问题

除2&#xff01; 贪心堆 让偶数入堆 注意点&#xff1a; 1.判断堆是否为空再进行操作 2. 为了防止超时&#xff0c;我们采取先求和的方式&#xff0c;后面调整之后再减掉&#xff0c;可以节省一次遍历的时间。 3.注意数据范围&#xff0c;要用long long #include<iost…

#MySQL 语句大全(完整实用教程)

&#x1f4cc; MySQL 语句大全&#xff08;完整实用教程&#xff09; &#x1f4cc; 1. 数据库操作 ✅ 创建数据库 CREATE DATABASE mydb; -- 创建名为 mydb 的数据库✅ 使用数据库 USE mydb; -- 选择数据库✅ 删除数据库 DROP DATABASE mydb; -- 删除数据库&#xff08…

万字重谈C++——类和对象篇

什么是类&#xff1f; 在编程中&#xff0c;类是用来创建对象的模板。可以把类看作一个蓝图&#xff0c;它定义了对象的属性&#xff08;特征&#xff09;和方法&#xff08;行为&#xff09;。例如&#xff0c;如果我们有一个“学生”的类&#xff0c;它可能包含学生的名字、…

18认识Qt坐标系

平面直角坐标系(笛卡尔坐标系) 数学上的坐标系 右手坐标系 计算机中的坐标系 左手坐标系 坐标系的原点(0,0) 就是屏幕的左上角 /窗口的左上角 给 Qt 的某个控件,设置位置,就需要指定坐标.对于这个控件来说, 坐标系原点就是相对于父窗口/控件的. QPushButton 的父元素/父控件/父…

量子计算与人工智能的结合:未来科技的双重革命

引言 在过去几十年里&#xff0c;人工智能&#xff08;AI&#xff09;和计算能力的提升一直是推动科技进步的重要力量。然而&#xff0c;随着深度学习和大规模数据处理的发展&#xff0c;传统计算架构的算力瓶颈逐渐显现&#xff0c;人工智能的训练和推理效率受到了限制。在此背…

SEO长尾词优化策略精要

内容概要 长尾关键词优化是SEO策略中实现精准流量捕获的核心环节。本文从定位方法、搜索意图分析、词库构建三个维度切入&#xff0c;系统阐述如何通过数据化工具筛选高转化潜力词&#xff0c;并结合用户行为路径优化内容架构。具体而言&#xff0c;内容将覆盖关键词挖掘工具的…

基于大模型的主动脉瓣病变预测及治疗方案研究报告

目录 一、引言 1.1 研究背景 1.2 研究目的 1.3 研究意义 二、大模型预测主动脉瓣病变原理 2.1 大模型介绍 2.2 数据收集与处理 2.3 模型训练与优化 三、术前预测与评估 3.1 主动脉瓣病变类型及程度预测 3.2 患者整体状况评估 3.3 手术风险预测 四、术中应用与监测…

进程和内存管理

目录 一.进程的基本信息 1.1进程的定义 1.2进程的特征 1.3进程的组成 1.4线程产生的背景 1.5线程的定义 1.6进程与线程的区别 1.7进程的类别 1.8进程的优先级 1.8.1进程优先级的概念 1.8.2PRI和NI 1.9僵尸进程 1.9.1僵尸进程的定义 1.9.2僵尸进程产生的原因 1.9…

css动态设置div宽高,calc函数

在css中使用calc函数 calc() 是 CSS 中的一种函数&#xff0c;用于动态计算长度值。它允许你在 CSS 属性中进行数学运算&#xff0c;结合不同的单位&#xff08;如 px、%、em 等&#xff09;&#xff0c;从而创建更加灵活和响应式的布局 表达式规则 运算符&#xff1a;支持加…

飞浆PaddlePaddle 猫狗数据大战

猫狗数据大战 1 数据集的准备以及处理操作1.1 数据集1.2 文件解压操作&#xff08;python&#xff09; 1.3 数据的分类1.4 创建训练集和测试集 2 网络构建CNN版本--DeepID 人脸识别网络结构DeepID 与 CNN 网络结构的差异 3 深度学习模型训练和推理的核心设置4 制图5 训练6 预测…

Spring Boot后端开发全攻略:核心概念与实战指南

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、全栈领域优质创作者、高级开发工程师、高级信息系统项目管理师、系统架构师&#xff0c;数学与应用数学专业&#xff0c;10年以上多种混合语言开发经验&#xff0c;从事DICOM医学影像开发领域多年&#xff0c;熟悉DICOM协议及…

PPT助手:一款集计时、远程控制与多屏切换于一身的PPT辅助工具

PPT助手&#xff1a;一款集计时、远程控制与多屏切换于一身的PPT辅助工具 &#x1f4dd;&#x1f3a4; 在现代化的演讲和演示中&#xff0c;如何高效地控制PPT进程、保证展示的流畅性与精准性&#xff0c;成为了每个演讲者必须面对的挑战。无论是商务汇报、学术演讲&#xff0…

WEB安全--文件上传漏洞--php伪协议的利用

一、伪协议介绍 1.1、内容 在 PHP 中&#xff0c;伪协议通常指的是一种通过特定的 URL 协议方案实现某些特殊功能或行为的方式。伪协议通常并不是标准的协议&#xff08;如 HTTP、HTTPS&#xff09;&#xff0c;而是由应用程序或开发者自定义的“伪”协议&#xff0c;用于执行…

高级:高并发架构面试题深度解析

一、引言 在现代互联网应用开发中&#xff0c;高并发架构设计是确保系统在高负载下仍能稳定、高效运行的关键。面试官通过相关问题&#xff0c;考察候选人对高并发系统设计的理解、架构模式的掌握以及在实际项目中解决问题的能力。本文将深入剖析高并发系统的设计原则、常见的…