史上最简单的 MySQL 教程(五)「SQL 基本操作 之 表操作」

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: 史上最简单的 MySQL 教程(五)「SQL 基本操作 之 表操作」

史上最简单的 MySQL 教程(五)「SQL 基本操作 之 表操作」

SQL 基本操作

基本操作:CURD,即增删改查。

根据操作对象的不同,咱们可以将 SQL 的基本操作分为三类,分别为:库操作、表(字段)操作和数据操作。

表操作

1 新增表

基本语法:

create table [if not exists] + 表名(
  字段名称 数据类型,
  ……
  字段名称 数据类型 /* 最后后一行,不需要加逗号 */
)[表选项];

其中,if not exists表示


如果表名不存在,就执行创建代码;如果表名存在,则不执行创建代码。

表选项则是用来控制表的表现形式的,共有三种,分别为:


字符集设定:charset/ character set+ 具体字符集,用来表示数据存储的编码格式,常用的字符集包括GBK和UTF8等。

校对集设定:collate+ 具体校对集,表示数据比较的规则,其依赖字符集。

存储引擎:engine+具体存储引擎,默认为InnoDB,常用的还有MyISAM.

由于任何表都归属于某个数据库,因此在创建表的时候,都必须先指定具体的数据库。在这里,指定数据库的方式有两种,分别为:


第 1 种:显式的指定表所属的数据库,示例

create table if not exists test.student(
  name varchar(10),
  age int,            /* 整型不需要指定具体的长度 */
  grade varchar(10) /* 最后后一行,不需要加逗号 */
)charset utf8;

第 2 种:隐式的指定表所属的数据库,示例

use test;       /* use + 数据库名称,表示切换到指定的数据库,这句命令其实不加分号也可以,但不建议这么做 */
create table if not exists student(
  name varchar(10),
  age int,            /* 整型不需要指定具体的长度 */
  grade varchar(10) /* 最后后一行,不需要加逗号 */
)charset utf8;

2 查询表


查看全部 --> 基本语法:show tables;


查看部分(模糊查询)–> 基本语法:show tables like 'pattern';


其中,pattern是匹配模式,有两种,分别为:


%:表示匹配多个字符;

_:表示匹配单个字符。

此外,在匹配含有下划线_的表名的时候,需要在下划线前面加上反斜线\_进行转义操作。


示例:show tables like '%t';表示匹配所有以t结尾的表。


查看表的创建语句 --> 基本语法:show create table + 表名;


在这里,咱们也可以用\g和\G代替上述语句中的;分号,其中\g等价于分号,\G则在等价于分号的同时,将查的表结构旋转90度,变成纵向结构。


查看表中的字段信息 --> 基本语法:desc/describe/show columns from + 表名;


3 更新表


在这里,需要注意:表的修改,分为修改表本身和修改表中的字段。


第 1 类:修改表本身


修改表名,基本语法:rename table 旧表名 to 新表名;

修改表选项,基本语法:alter table + 表名 + 表选项[=] + 值;

第 2 类:修改表中的字段,新增、修改、重命名和删除


新增字段,基本语法:alter table + 表名 + add + [column] + 字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student add column id int first;

修改字段,基本语法:alter table + 表名 + modify + 字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student modify name char(10) after id;

重命名字段,基本语法:alter table + 表名 + change + 旧字段名 + 新字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student change grade class varchar(10);

删除字段,基本语法:alter table + 表名 + drop+ 字段名;

示例:alter table student drop age;

注意:如果表中已经存在数据,那么删除该字段会清空该字段的所有数据,而且不可逆,慎用。

4 删除表


基本语法:

-- 可以一次删除多张表
drop table + 表1, 表2 ... ;

在这里,需要注意:此删除为不可逆操作,希望大家谨慎使用。

温馨提示:用符号[]括起来的内容,表示可选项;符号+,则表示连接的意思。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3天前
|
运维 DataWorks 关系型数据库
DataWorks产品使用合集之DataWorks还有就是对于mysql中的表已经存在数据了,第一次全量后面增量同步的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
18 2
|
1天前
|
SQL 关系型数据库 MySQL
【MySQL系列笔记】常用SQL
常用SQL分为三种类型,分别为DDL,DML和DQL;这三种类型的SQL语句分别用于管理数据库结构、操作数据、以及查询数据,是数据库操作中最常用的语句类型。 在后面学习的多表联查中,SQL是分析业务后业务后能否实现的基础,以及后面如何书写动态SQL,以及完成级联查询的关键。
18 6
|
1天前
|
SQL 关系型数据库 MySQL
【MySQL-4】简述SQLの通用语法及4种基本语句介绍(DDL/DML/DQL/DCL)
【MySQL-4】简述SQLの通用语法及4种基本语句介绍(DDL/DML/DQL/DCL)
|
2天前
|
SQL 存储 关系型数据库
【MySQL】DDL的表操作详解:创建&查询&修改&删除
【MySQL】DDL的表操作详解:创建&查询&修改&删除
|
2天前
|
SQL 存储 关系型数据库
【MySQL系列笔记】SQL优化
SQL优化是通过调整数据库查询、索引、表结构和配置参数等方式,提高SQL查询性能和效率的过程。它旨在减少查询执行时间、减少系统资源消耗,从而提升数据库系统整体性能。优化方法包括索引优化、查询重写、表分区、适当选择和调整数据库引擎等。
16 3
|
3天前
|
SQL DataWorks 关系型数据库
DataWorks操作报错合集之DataWorks在同步mysql时报错Code:[Framework-02],mysql里面有个json类型字段,是什么原因导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
17 0
|
3天前
|
关系型数据库 MySQL Java
使用shardingjdbc执行MySQL游标操作时报错
使用shardingjdbc执行MySQL游标操作时报错
|
3天前
|
SQL 关系型数据库 MySQL
MySQL SQL error: #1271 - Illegal mix of collations for operation ‘UNION‘
MySQL SQL error: #1271 - Illegal mix of collations for operation ‘UNION‘
|
3天前
|
存储 SQL 关系型数据库
mysql查询数据库表大小怎么操作
mysql查询数据库表大小怎么操作
|
3天前
|
SQL 关系型数据库 MySQL
使用Python的pymysql库连接MySQL,执行CRUD操作
使用Python的pymysql库连接MySQL,执行CRUD操作:安装pymysql,然后连接(host='localhost',user='root',password='yourpassword',database='yourdatabase'),创建游标。查询数据示例:`SELECT * FROM yourtable`;插入数据:`INSERT INTO yourtable...`;更新数据:`UPDATE yourtable SET...`;删除数据:`DELETE FROM yourtable WHERE...`。
10 0