MySQL存储过程——Baidu Comate智能代码助手添加20条DML语句——测试索引效果

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL存储过程——Baidu Comate智能代码助手添加20条DML语句——测试索引效果

MySQL存储过程——Baidu Comate智能代码助手添加20条DML语句——测试索引效果

DDL

CREATE TABLE student (
    id INT PRIMARY KEY AUTO_INCREMENT,
    createDate DATE NOT NULL,
    userName VARCHAR(255) NOT NULL,
    phone VARCHAR(20),
    age INT,
    sex ENUM('M','F','O') NOT NULL,
    introduce TEXT
);

存储过程

DELIMITER //
CREATE PROCEDURE InsertRandomStudents()
BEGIN
    DECLARE i INT DEFAULT 0;
    WHILE i < 1000 DO
        INSERT INTO student (createDate, userName, phone, age, sex, introduce) 
        VALUES (
            -- createDate: 随机日期(例如:过去10年内)
            DATE_ADD(NOW(), INTERVAL FLOOR(RAND() * (0 - 3650) + 0) DAY),
            
            -- userName: 随机用户名(例如:'User' + 随机数字)
            CONCAT('User', FLOOR(RAND() * 1000000)),
            
            -- phone: 随机电话号码(例如:13800000000 到 13899999999 之间)
            CONCAT('138', LPAD(FLOOR(RAND() * 999999999), 9, '0')),
            
            -- age: 随机年龄(例如:18 到 30 之间)
            FLOOR(RAND() * (30 - 18 + 1)) + 18,
            
            -- sex: 随机性别(M, F, 或 O)
            ELT(1 + FLOOR(RAND() * 3), 'M', 'F', 'O'),
            
            -- introduce: 随机介绍文本(例如:'Hello, I am a student.' 或其他文本)
            -- 这里为了简化,只使用了一条静态文本,你可以根据需要扩展为多条或更复杂的文本。
            'Hello, I am a student.'
        );
        SET i = i + 1;
    END WHILE;
END //
DELIMITER ;
 
 
# 如果是带参数的需要自己传递值,反之不需要
CALL InsertRandomStudents();
 
 
# 数据量查询
select count(*) from student;

20条数据,得根据机械/固态硬盘来判断插入所需的时间。机械硬盘会有滋滋滋的声音。

索引测试

查询语句-根据情况修改一下userName的值。

select * from student where userName='User512591';

-- select * from student where userName='User512591'

-- > OK-没有索引

-- > 时间: 0.159s

-- > OK-有索引

-- > 时间: 0.001s

实际的测试结果。

问题语句,前提是选中DDL语句

请帮我根据DDL生成一个添加20万条随机数据的存储过程。要求尽可能的使用中文来添加信息。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
2月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
309 1
|
3月前
|
算法 IDE Java
Java 项目实战之实际代码实现与测试调试全过程详解
本文详细讲解了Java项目的实战开发流程,涵盖项目创建、代码实现(如计算器与汉诺塔问题)、单元测试(使用JUnit)及调试技巧(如断点调试与异常排查),帮助开发者掌握从编码到测试调试的完整技能,提升Java开发实战能力。
425 0
|
1月前
|
安全 Java 测试技术
《深入理解Spring》单元测试——高质量代码的守护神
Spring测试框架提供全面的单元与集成测试支持,通过`@SpringBootTest`、`@WebMvcTest`等注解实现分层测试,结合Mockito、Testcontainers和Jacoco,保障代码质量,提升开发效率与系统稳定性。
|
2月前
|
人工智能 关系型数据库 Java
当MySQL遇见AI:使用Vector扩展实现智能语义搜索
传统数据库的关键词搜索已无法满足现代应用对智能语义查询的需求。本文介绍如何通过MySQL的向量扩展(Vector Extension),将大模型产生的文本嵌入向量存储在MySQL中,并实现高效的语义相似度搜索。我们将完整演示从环境准备、数据库表设计、Java应用集成到性能优化的全流程,让您的传统关系型数据库瞬间具备AI智能检索能力,为构建下一代智能应用提供核心数据支撑。
351 3
|
2月前
|
人工智能 边缘计算 搜索推荐
AI产品测试学习路径全解析:从业务场景到代码实践
本文深入解析AI测试的核心技能与学习路径,涵盖业务理解、模型指标计算与性能测试三大阶段,助力掌握分类、推荐系统、计算机视觉等多场景测试方法,提升AI产品质量保障能力。
|
4月前
|
安全 Java 测试技术
Java 项目实战中现代技术栈下代码实现与测试调试的完整流程
本文介绍基于Java 17和Spring技术栈的现代化项目开发实践。项目采用Gradle构建工具,实现模块化DDD分层架构,结合Spring WebFlux开发响应式API,并应用Record、Sealed Class等新特性。测试策略涵盖JUnit单元测试和Testcontainers集成测试,通过JFR和OpenTelemetry实现性能监控。部署阶段采用Docker容器化和Kubernetes编排,同时展示异步处理和反应式编程的性能优化。整套方案体现了现代Java开发的最佳实践,包括代码实现、测试调试
207 0
|
5月前
|
测试技术 Go 开发者
如何为 gRPC Server 编写本地测试代码
本文介绍了如何使用 Go 语言中的 gRPC 测试工具 **bufconn**,通过内存连接实现 gRPC Server 的本地测试,避免端口冲突和外部依赖。结合示例代码,讲解了初始化内存监听、自定义拨号器及编写测试用例的完整流程,并借助断言库提升测试可读性与准确性。适用于单元及集成测试,助力高效开发。
105 1
|
7月前
|
SQL 缓存 关系型数据库
使用温InnoDB缓冲池启动MySQL测试
使用温InnoDB缓冲池启动MySQL测试
136 0
|
7月前
|
SQL 缓存 关系型数据库
MySQL8.4 Enterprise安装Firewall及测试
MySQL8.4 Enterprise安装Firewall及测试
230 0

推荐镜像

更多