Mysql数据库,增删改查笔记(非常重要)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Mysql数据库,增删改查笔记(非常重要) 新增数据: INSERT 语法: INSERT [INTO] <表名>[列名] VALUES<值列表>; INSETR INTO 表名(列名1,列名2) VALUES(值1,值2); 如果INSETR语句中不写列名,则默认是向表中的所有字段添加值。

Mysql数据库,增删改查笔记(非常重要)

新增数据:

INSERT

语法:

INSERT [INTO] <表名>[列名] VALUES<值列表>;

INSETR INTO 表名(列名1,列名2) VALUES(值1,值2);

如果INSETR语句中不写列名,则默认是向表中的所有字段添加值。

(此时输入数据数量要等同于列的数量,否则会报错,数据库对插入的数据是否有效进行了完整的校验)

字符串需要以‘’或者“”“”来括起

字符会自动转换成数字插入

 

INSERT INTO SELECT

INSERT [INTO] <表名>[列名] SELECT [源列名] FROM <源表名>;

INSERT INTO 表名 (列名1,列名2) SELECT 源列名1,源列名2 FROM 源表名;

 

1.每次插入一行数据,不可能只插入半行或者几列数据,因此,插入的数据是否有效将按照整行的完整性的要求来检验

INSERT INTO students (s_id,s_name,age) VALUES (‘小明')

2.每个数据值的数据类型、精度和小数位数必须与相应的列匹配

insert into students(s_id,s_name,age) values(1001,123, 'asd');

insert into students(s_id,s_name,age) values(1001,123, '100');

insert into students(s_id,s_name,age) values(1001,123, '255');

3.如果在设计表的时候就指定了某列不允许为空,则必须插入数据;

insert into students(s_id) values(1001); 错误

4.具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值

 

常见错报错类型:

[Err] 1136  - Column cout doesn't match value count at row 1

INSERT语句中没有输入列名且列多值少 报错 数据库对插入的数据是否有效进行了完整性的校验

[Err] 1265 - Data truncated for column '...' at row 1

数值类型或长度不符合列名设置

[Err] 1364 -Field 's_name' doesn't have a default value 

如果字段设置了 NOT NULL 则必须插入。或者设置DEFAULT值

修改数据

UPDATE

语法: 

UPDATE <表名> SET <列名 = 更新值> [WHERE <更新条件>]

UPDATE 表名 SET 列名1=值1,列名2=值2 .... WHERE 列名=值;

不带where条件会导致全量更新

叙述:

where 子句是判断语句,用来设定条件,限制只更新匹配的行,如果 不带where子句,则更新所有行数据。

例如:

update students set age=23,height=185 where s_name='火狐';

删除数据

DELETE

语法:

DELETE FROM <表名> [WHERE <更新条件>]

叙述:

此语句删除表中的行,如果不带where子句,则删除整个表中的记录 但是表不被删除

 

DELETE FROM <表名>; 删除表里的所有数据,表结构还在。

TRUNCATE TABLE <表名>; 删除表里的所有数据,但不会显示删除的数据行数,不能够做筛选。直接进行整表删除,表结构还在。

DORP TABLE <表名>; 删除表。表结构不存在。

查询数据

SELECT

语法:

SELECT <列名> FROM <表名> [WHERE <查询表达式>];

1、查询学生的学号(s_id) ,姓名(s_name)

SELECT s_id,s_name FROM students; 

2、查询姓名为‘CMCC’的学号和性别信息

SELECT s_id,s_sex FROM students WHERE s_name='CMCC';

3、查询表里的所有列 (使用*号)

方法1:SELECT * FROM students; // 用*表示所有列

方法2:SELECT s_id,s_name,age,height,sex,class_id,birthday,s_desc FROM students; // 把所有列的列举出来

4、给列起别名:SELECT 列名1 [AS] 列别名1,列名2 [AS] 列别名2... FROM 表名;

SELECT s_name AS ‘学员姓名’,s_id AS ‘学员编号’ FROM students;

5、给表起别名: SELECT 表别名.列名1.列名2 FROM 表名 表别名;

SELECT s.s_id,s.s_name FROM students s;

补充:

MySQL中使用SQL语言几点说明

属于一个SQL语句,使用分号(;)结尾,否则mysql认为语句没有输入完。

箭头(->)代表SQL语句没有输入完

取消SQL语句使用(\c)

SQL语句关键字和函数名不区分大小写(Linux区分,Windows不区分)

使用函数时,函数名和后面的括号之间不能有空格

说明:

表和字段的引用方式有两种:绝对引用和相对引用

绝对引用:数据库名.表名(.字段名)

mysql> select school.students.s_name from school.students;

相对引用:表名.(字段名)

mysql> select students.s_name from school.students;

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5月前
|
SQL 关系型数据库 MySQL
mysql 简单的sql语句,入门级增删改查
介绍MySQL中的基本SQL语句,包括数据的增删改查操作,使用示例和简单的数据表进行演示。
mysql 简单的sql语句,入门级增删改查
|
9天前
|
关系型数据库 MySQL 数据库连接
Unity连接Mysql数据库 增 删 改 查
在 Unity 中连接 MySQL 数据库,需使用 MySQL Connector/NET 作为数据库连接驱动,通过提供服务器地址、端口、用户名和密码等信息建立 TCP/IP 连接。代码示例展示了如何创建连接对象并执行增删改查操作,确保数据交互的实现。测试代码中,通过 `MySqlConnection` 类连接数据库,并使用 `MySqlCommand` 执行 SQL 语句,实现数据的查询、插入、删除和更新功能。
|
2月前
|
SQL 关系型数据库 API
HarmonyOs开发:关系型数据库封装之增删改查
每个方法都预留了多种调用方式,比如使用callback异步回调或者使用Promise异步回调,亦或者同步执行,大家在使用的过程中,可以根据自身业务需要进行选择性调用,也分别暴露了成功和失败的方法,可以针对性的判断在执行的过程中是否执行成功。
109 13
|
2月前
|
SQL 存储 关系型数据库
MySQL/SqlServer跨服务器增删改查(CRUD)的一种方法
通过上述方法,MySQL和SQL Server均能够实现跨服务器的增删改查操作。MySQL通过联邦存储引擎提供了直接的跨服务器表访问,而SQL Server通过链接服务器和分布式查询实现了灵活的跨服务器数据操作。这些技术为分布式数据库管理提供了强大的支持,能够满足复杂的数据操作需求。
103 12
|
3月前
|
关系型数据库 MySQL Java
Servlet+MySQL增删改查 原文出自[易百教程] 转载请保留原文链接: https://www.yiibai.com/geek/1391
对于任何项目开发,创建,读取,更新和删除(CRUD)记录操作是应用程序的一个最重要部分。
102 20
|
4月前
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
89 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
|
4月前
|
SQL NoSQL 数据库
Cassandra数据库与Cql实战笔记
Cassandra数据库与Cql实战笔记
77 1
Cassandra数据库与Cql实战笔记
|
4月前
|
存储 NoSQL API
使用Py2neo进行Neo4j图数据库的增删改查操作
使用Py2neo进行Neo4j图数据库的增删改查操作
171 5
|
4月前
|
前端开发 Java 数据库连接
javamvc配置,增删改查,文件上传下载。
【10月更文挑战第4天】javamvc配置,增删改查,文件上传下载。
52 1
|
4月前
|
数据可视化 API PHP
低代码开发工具-学生管理系统-老师管理增删改查实现
低代码开发工具-学生管理系统-老师管理增删改查实现
64 5