【MySQL从删库到跑路 | 基础第二篇】——谈谈SQL中的DML语句

个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【MySQL学习专栏】🎈
本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌
在这里插入图片描述

前言

前面我们已经讲解了SQL语句中的DDL语句。今天我们继续来学习SQL的DML语句。

DML是数据操作语言,用于对库中表的数据操作进行增删改操作

1.给指定字段添加数据(INSERT)
2.修改数据(UPDATE)
3.删除数据(DELETE)

一、添加数据(INSERT)

先来看添加数据的语法:

1.给指定字段添加数据
INSERT INTO 表名(字段1,字段2,...) VALUES(值1,值2,...);

2.给全部字段添加数据
INSERT INTO 表名 VALUES(值1,值2,...);

3.批量添加数据
语法一:INSERT INTO 表名(字段1,字段2,...) VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...);
语法二:INSERT INTO 表名 VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...);

注意事项如下:

1.插入数据时指定的字段顺序需要与值的顺序是一一对应的。
2.字符串与日期型数据应该在引号中。
3.插入的数据大小应该在字段的规定范围内。
在这里插入图片描述
我们现在以上面的图进行演示。

示范一(给指定字段添加数据):insert into employee(id,worknum,name,gender,age,idcard,entrydate) values(1,'1','Amy','男',21,'123456789012345678','2020-01-01');

结果演示:
在这里插入图片描述
这里需要注意的是,表中的字段age类型为tinyint unsigned,所以范围是0和正数,倘若我们这里给的数据是一个负数的话,是会报错的。这里就不进行演示了。
在这里插入图片描述
可以看到这里提示age超出了范围。

示范二(给全部字段添加数据):insert into employee(id,worknum,name,gender,age,idcard,entrydate) values(2,'1','Tom','男',20,'123456789012345679','2021-01-01');
结果演示,请看:
在这里插入图片描述

示范三(批量添加数据)insert into employee values(3,'2','Daming','男',22,'223456789012345679','2022-01-01'), (4,'3','Sam','女',21,'323456789012345679','2023-01-01'), (5,'4','Simon','男',24,'423456789012345679','2024-01-01');
结果演示:
在这里插入图片描述

二、修改数据(UPDATE)

修改数据语法:

UPDATE 表名 SET 字段名1=1,字段名2=2,...[WHERE 条件];

注意:这里修改语句的条件可以有,也可以没有,如果没有条件的话,则会修改整张表的所有数据。

接下来我们依然是举3个例子来进行演示。

示例一(修改ID为1的数据,将name就改为’Samon;) update employee set name = 'Yellow' where id = 1; 演示结果如下:
在这里插入图片描述

示例二:(修改ID为1的数据,将name改为James,将性别改为女) update employee set name = 'James',gender = '女' where id = 1; 演示结果如下:
在这里插入图片描述

示例三(将所有员工的入职日期修改为2005-04-06): update employee set entrydate = '2005-04-06'; 请看演示结果:
在这里插入图片描述

三、删除数据(DELETE)

语法格式:DELETE FROM 表名 [WHERE 条件]
这里需要注意的是DELETE语句的条件可以有也可以没有,如果没有条件的话,则会删除整张表的全部数据。
Delete语句不能删除某一个字段的值(但是可以使用UPDATE
)。****

示例一(删除性别为女的员工):

sql delete from employee where gender = '女'; 结果如下,请看:

在这里插入图片描述

示例二:(删除所有员工) delete from employee; 结果演示:在这里插入图片描述
在这里插入图片描述

四、DML语句总结

DML语句是数据操作语言,主要作用是数据库表的增删改的操作,即添加、修改、删除。

添加数据:INSERT INTO 表名(字段1,字段2,...) VALUES(值1,值2,...)[,(值1,值2,...)...];

修改数据:UPDATE 表名 SET 字段1=值1,字段2=值2 [WHERE 条件];

删除数据:DELETE FROM 表名 [WHERE 条件];

好了,以上就是DML语句的增删改操作。
就到这里吧,再见啦友友们!!!

  • 59
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 49
    评论
基于Spring Boot 实现 SQL 生成器,可以按照以下步骤进行: 1. 添加依赖:在 pom.xml 文件添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> ``` 这些依赖分别用于启动 Spring Boot Web 服务和使用 Thymeleaf 模板引擎。 2. 创建 Controller:创建一个 Java 类,添加 @RestController 注解,用于处理 HTTP 请求。例如: ```java @RestController public class SqlGeneratorController { @PostMapping("/generate") public String generateSql(@RequestBody Map<String, Object> params) { // 根据参数生成 SQL 语句 String sql = generateSqlFromParams(params); // 返回生成的 SQL 语句 return sql; } private String generateSqlFromParams(Map<String, Object> params) { // 根据参数生成 SQL 语句的逻辑 // TODO: 实现生成 SQL 语句的逻辑 return ""; } } ``` 上面的代码,@PostMapping("/generate") 注解用于指定 HTTP 请求的径,@RequestBody 注解用于获取 HTTP 请求的参数。 3. 创建 Thymeleaf 模板:创建一个 HTML 文件,用于显示生成的 SQL 语句。例如: ```html <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>SQL Generator</title> </head> <body> <h1>SQL Generator</h1> <form method="post" action="/generate"> <div> <label for="table-name">Table Name:</label> <input type="text" id="table-name" name="table_name"> </div> <div> <button type="submit">Generate SQL</button> </div> </form> <hr> <div th:if="${sql}"> <h2>Generated SQL:</h2> <pre th:text="${sql}"></pre> </div> </body> </html> ``` 上面的代码,form 元素用于提交 HTTP 请求,并包含一个输入框用于输入表名。如果生成了 SQL 语句,则会在页面上显示生成的 SQL 语句。 4. 实现生成 SQL 语句的逻辑:根据参数生成 SQL 语句的逻辑可以使用模板引擎来实现。在 generateSqlFromParams 方法,使用 Thymeleaf 模板引擎将参数填充到 SQL 语句的模板,生成最终的 SQL 语句。例如: ```java private String generateSqlFromParams(Map<String, Object> params) { String table_name = (String) params.get("table_name"); TemplateEngine templateEngine = new TemplateEngine(); ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setPrefix("templates/"); templateResolver.setSuffix(".sql"); templateEngine.setTemplateResolver(templateResolver); Context context = new Context(); context.setVariable("table_name", table_name); return templateEngine.process("create_table", context); } ``` 上面的代码,首先从参数获取表名,然后创建一个 Thymeleaf 模板引擎,设置模板文件的径和后缀名。接着,创建一个上下文对象,将表名添加到上下文,最后使用模板引擎将上下文数据填充到 SQL 模板文件,生成最终的 SQL 语句。 5. 启动应用程序:在应用程序的入口类添加 @SpringBootApplication 注解,启动应用程序。例如: ```java @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 启动应用程序后,访问 http://localhost:8080 可以看到 SQL Generator 的页面,输入表名并点击生成 SQL 按钮,即可生成 SQL 语句并显示在页面上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 49
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兜里有颗棉花糖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值