首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql过程不删除数据

MySQL过程不删除数据是指在MySQL数据库中,执行存储过程时不会删除任何数据。

存储过程是一组预编译的SQL语句集合,可以在数据库中进行重复使用。存储过程可以接受参数,并且可以包含条件判断、循环、异常处理等逻辑。存储过程可以用于数据查询、数据操作、业务逻辑处理等。

相比于直接执行SQL语句,使用存储过程有以下优势:

  1. 提高性能:存储过程在数据库服务器端执行,减少了网络传输的开销,可以提高查询和操作的效率。
  2. 代码重用:存储过程可以在多个地方被调用,提高了代码的重用性,减少了代码的冗余。
  3. 安全性:存储过程可以设置权限,只允许特定的用户或角色执行,提高了数据的安全性。
  4. 简化开发:存储过程可以封装复杂的业务逻辑,简化了应用程序的开发过程。

MySQL提供了存储过程的支持,可以使用CREATE PROCEDURE语句创建存储过程。以下是一个示例的MySQL存储过程,用于查询用户表中的数据:

代码语言:txt
复制
DELIMITER //
CREATE PROCEDURE GetUsers()
BEGIN
    SELECT * FROM users;
END //
DELIMITER ;

在上述示例中,存储过程名为GetUsers,通过SELECT语句查询用户表中的数据。可以通过调用该存储过程来获取用户数据。

腾讯云提供了MySQL数据库的云服务,可以使用腾讯云的云数据库MySQL来存储和管理数据。云数据库MySQL提供了高可用、可扩展、安全可靠的特性,适用于各种规模的应用场景。您可以通过腾讯云的云数据库MySQL产品页面(https://cloud.tencent.com/product/cdb_mysql)了解更多相关信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

不删库不跑路 -- 数据库优化

数据Mysql在后端开发工作中,必不可少,关于mysql优化的知识也是后端工程师必备的。接下来小强将分阶段的向大家介绍关于关于Mysql优化的相关知识。...Innodb 不仅仅缓存索引,同时还会缓存实际的数据。 通过以下指令,我们可以看出Mysql的引擎到底是什么: ? 通过下面指令可以知道自己所使用的mysql版本是什么: ?...所有跨存储引擎的功能也 在这一层实现,如过程、函数等。在该层,服务器会解析查询并创建相应的内部解析树,并对其完成相应的优化如确定查询表的顺序,是否利用索引等,最后生成相 应的执行操作。...(不需要访问数据文件) (9)UNIQUE_SUBQUERY 在子查询中,基于唯一索引进行扫描,类似于EQ_REF (10)INDEX_SUBQUERY 在子查询中,基于唯一索引之外的索引进行扫描...) rows: 这个数表示mysql要遍历多少数据才能找到。

54920

Mysql数据库-存储过程

Mysql数据库-存储过程 1. 存储过程和函数概述 1. 存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合 a. 类似于java中的方法: 是一段java代码的集合 b....end$ delimiter ; -- 修改结束分隔符为; -- 调用存储过程 call 存储过程名称(实际参数) ; 2.2 实例: 2.2.1 准备数据 -- 准备数据 create database...查看和删除存储过程 3.1 语法: -- 查询数据库中所有的存储过程 select * from mysql.proc where db='数据库名称'; -- 删除存储过程 drop procedure...[if exists] 存储过程名称; 3.2 实例: -- 查询数据库中所有的存储过程 select * from mysql.proc where db='db2'; -- 删除存储过程 drop...procedure if exists stu_group; 执行如下: -- 查询数据库 db2 中所有的存储过程 mysql> select * from mysql.proc where db

11K10

MySQLMySQL 存储过程

MySQL 存储过程(了解) 1 什么是存储过程 MySQL 5.0 版本开始支持存储过程 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据 库对象。...存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过 指定存储过程的名字并给定参数(需要时)来调用执行。 简单理解: 存储过程其实就是一堆 SQL 语句的合并。...中间加入了一些逻辑控制 2 存储过程的优缺点 优点:   存储过程一旦调试完成后,就可以稳定运行,(前提是,业务需求要相对稳定,没有变化)   存储过程减少业务系统与数据库的交互,降低耦合...,数据库交互更加快捷(应用服务器,与 数据库服务器不在同一个地区) 缺点:    在互联网行业中,大量使用MySQLMySQL的存储过程与Oracle的相比较弱,所以较少使用,并且互联网行业需求变化较快也是原因之一...   尽量在简单的逻辑中使用,存储过程移植十分困难,数据库集群环境,保证各个库之间存储 过程变更一致也十分困难。

16K10

生产Mysql数据数据恢复实战过程

1 实战环境介绍 线上环境 mysql数据库一主多从的架构,主写从读进行读写分离,专用从库做数据备份,每天0点全备一次,12点增量备份一次,初始阶段数据量很小的情况按此方案,后续数据量大,读写频繁时...,再进行相关调整,增加增量备份频次 系统环境 [root@mysql-1 ~]# cat /etc/redhat-release CentOS release 6.8 (Final) [root@mysql...-1 ~]# uname -r 2.6.32-642.el6.x86_64 [root@mysql-1 ~]# mysql -v mysql Ver 14.14 Distrib 5.7.17, for...linux-glibc2.5 (x86_64) using EditLine wrapper 主从同步 3306---->3307 3307 开启binlog日志,用做备份服务器,0点全备,12点增量备份 [root@mysql...此时主库数据恢复成功 4 测试主从同步 重新开启同步来测试数据是否同步 ? 至此,整个数据恢复过程结束,通过binlog日志增量文件恢复数据成功

2.4K20

MySQL的存储过程_MySQL创建存储过程

什么是存储过程 存储过程就是事先经过编译并存储在数据库中的一段 SQL 语句的集合; 为什么使用存储过程 调用存储过程可以简化应用开发人员的很多工作,减少数据数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的...存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用。...存储过程特点: 封装,复用, 可以把某一业务SQL封装在存储过程中,需要用到的时候直接调用即可; 可以接收参数,也可以返回数据, 在存储过程中,可以传递参数,也可以接收返回值; 减少网络交互,提升效率,...delimiter 指定SQL语句的结束符 存储过程中的变量 在MySQL中,变量一般可分为分为三种类型: 系统变量、用户定义变量、局部变量; 一、系统变量 系统变量是MySQL服务器系统自身提供的...循环语句在编程中经常被用到,常用于对批量的数据进行循环处理,在mysql的存储过程中,也提供了几种常用的循环语句,包括:while循环,repeat循环,和loop循环; 1、while循环语句 while

22.2K21

Innodb和MyISAM外MySQL还有哪些存储引擎

较小的空间占用也能在你移植MySQL数据的时候发挥作用。...]# 回到数据库中,我们往数据表里插入一些数据mysql> insert into myarchive (c1,c2) values ('aa','bb'),('cc','dd'); Query...使用场景: 用于查找或者是映射表,例如邮编和地区的对应表 用于保存数据分析中产生的中间表 用于缓存周期性聚合数据的结果表 注意一点是:Memory数据易丢失,所以要求存储的数据都是可再生的 ---- MySQL...Federated 存储引擎允许访问远程MySQL数据库中的数据,Federated 仅支持表级别的远程访问。本地的Federated表中不存储数据,访问本地表时,会自动从远程表中获取数据。...远程mysql的用户名 - password 远程mysql的密码 - host_name 远程mysql的主机地址(ip) - port_num 远程mysql的端口后 - db_name 需要连接的数据

60820

Mysql使用存储过程快速添加百万数据

为了体现不加索引和添加索引的区别,需要使用百万级的数据,但是百万数据的表,如果使用一条条添加,特别繁琐又麻烦,这里使用存储过程快速添加数据,用时大概4个小时。...COMMENT '用户类型 1,2,3,4 随机', PRIMARY KEY (`id`), KEY `idx_username` (`username`) USING BTREE ) 然后创建存储过程...,批量添加数据。...floor(rand() * 800000)),floor(1 + rand() * 4)); set i = i + 1; end while; end 然后调用存储过程...call salesAdd() 改进版 虽然使用存储过程添加数据相对一个个添加更加便捷,快速,但是添加几百万数据要花几个小时时间也是很久的,后面在网上找到不少资料,发现mysql每次执行一条语句都默认自动提交

3.4K20

Mysql使用存储过程快速添加百万数据

前言 为了体现不加索引和添加索引的区别,需要使用百万级的数据,但是百万数据的表,如果使用一条条添加,特别繁琐又麻烦,这里使用存储过程快速添加数据,用时大概4个小时。...,批量添加数据。...set i = i + 1; end while; end // DELIMITER ; 这里需要注意的是DELIMITER//和DELIMITER;两句, DELIMITER是分割符的意思,因为MySQL...默认以";"为分隔符,如果我们没有声明分割符,那么编译器会把存储过程当成SQL语句进行处理,则存储过程的编译过程会报错,所以要事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程中的代码...然后调用存储过程 call salesAdd() 改进版 虽然使用存储过程添加数据相对一个个添加更加便捷,快速,但是添加几百万数据要花几个小时时间也是很久的,后面在网上找到不少资料,发现mysql每次执行一条语句都默认自动提交

1.8K20

一次MySQL线上数据恢复过程

一次线上数据恢复过程 这个周末过得相当充实,当我们做一些有意思的事情的时候,就会觉得周末的时间特别长。...废话不多说了,今天写一次线上的数据恢复过程,今天有一个运维的女同事不小心误删了一张表里面的数据,来找我恢复,一副很焦急的样子,当时我询问了故障的发生过程,大概如下: 有两张业务表,利用了外键进行了关联...,她想删除被关联的表中的某一条数据,但是忘记写where条件了,但是好的一点是mysql中对于外键有校验,就是删除被关联的表的时候,会报一个错误:can not delete or update a parent...,写一些常见的DML,如下 mysql:(none) 22:33:24>>flush logs; Query OK, 0 rows affected (0.01 sec) mysql:(none) 22...最后,我们利用这个方法帮助那个运维的小姑娘恢复了数据,作为回报,她给我和另外一个MySQL方向的同事买了两杯瑞幸咖啡。哈哈,此处非广告。

73520

MySQL 存储过程

1.简介 存储过程(Stored Procedure)是一种存储在数据库中的程序,可供外部程序调用的一种数据库对象。...存储过程没有返回值,但是它可以通过输出参数实现数据的返回,同时还可以产生一个查询结果返回到客户端。 存储过程经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)调用执行。...存储过程思想上很简单,就是数据库 SQL 语句的封装与重用。 MySQL 5.0 版本引入了对存储过程、存储函数和触发器等存储程序的支持。...减少网络流量: 存储过程在服务器端执行,只返回结果,减少了在网络上传输的数据量。 不过,存储过程也存在一些缺点: MySQL 存储过程的语法和其他数据库之间不兼容,无法直接移植。...存储过程需要占用数据库服务器的资源,包括 CPU、内存等。MySQL 对于大量逻辑处理的支持不够完善。 存储过程的开发和维护需要专业的技能。

30720

MySQL】存储过程

文章目录 为什么使用存储过程 书写基本格式 关于参数 存储过程中开启事务 返回多个结果集 设置变量 存储过程:一段SQL语句的集合 为什么使用存储过程 1、解耦合。...数据库部分可交由专门的数据库管理人员去做,像前后端联合协作那样提供接口供后端调度。(这两天对后端开发又有了新的理解:作为前端和数据库之间数据转接的中间人。...不论是哪种业务,后端架构如何发展,不都是为了数据走的更顺畅点吗?)作为后端开发人员,SQL是必备语言,但是如果条件允许,专业的事情交给专业的人来做。 2、命令短小。使用过就知道了。...如果在服务端发送多条命令到数据库执行,那可真说不准发到哪一条的时候线程就被叉出去了。...设置变量 在存储过程中如果要设置变量: declare 变量 数据类型; create procedure booktickets_CP(in id_ int, in cid_ int, in site

7.9K30

MySQL 存储过程

1.1 简介 1.1.1 概述   MySQL 5.0 版本开始支持存储过程。存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。...存储过程是为了完成特定功能的 SQL 语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。...② 存储过程可以回传值,并可以接受参数。  ③ 存储过程无法使用 select 指令来运行,因为它是子程序,与查看表,数据表或用户定义函数不同。  ...④ 存储过程可以用在数据检验,强制实行商业逻辑等。 ☞ 缺点  ① 存储过程,往往定制化于特定的数据库上,因为支持的编程语言不同。当切换到其他的数据库系统时,需要重写原有的存储过程。  ...② 存储过程的性能调校与撰写,受限于各种数据库系统。 1.1.3 阿里规约 ?

13.3K31

MySQL存储过程

文章目录 创建/调用存储过程 存储过程体 为语句块贴标签 参数列表 存储过程的优缺点 存储过程的优点 存储过程的缺点 存储过程和函数可以理解为一段sql的集合,他们被事先编译好并且存储在数据库中。...) 来俩示例就都明白了,也不难的东西: mysql> delimiter $$ mysql> create procedure in_param(in p_in int) -> begin...->   select p_in; ->   set p_in=2; -> select P_in; -> end$$ mysql> delimiter ; mysql>...因为out是向调用者输出参数,不接收输入的参数,所以存储过程里的p_out为null +-------+ | p_out | +-------+ | 2 | +-------+ mysql>...因为存储过程是和数据库绑定的,如果我们更换数据库之类的操作,可能很多地方需要改动。 2.修改不方便。

10.1K30

MySQL存储过程

MySQL的存储过程 存储过程数据库的一个重要的功能,MySQL 5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。...好在MySQL 5.0开始支持存储过程,这样即可以大大提高数据库的处理速度,同时也可以提高数据库编程的灵活性。...MySQL存储过程的创建 语法 CREATE PROCEDURE 过程名([[IN|OUT|INOUT] 参数名 数据类型[,[IN|OUT|INOUT] 参数名 数据类型…]]) [特性 ...]...MySQL存储过程的查询 #查询存储过程 SELECT name FROM mysql.proc WHERE db='数据库名'; SELECT routine_name FROM information_schema.routines...数据库.存储过程名; MySQL存储过程的修改 ALTER PROCEDURE 更改用CREATE PROCEDURE 建立的预先指定的存储过程,其不会影响相关存储过程或存储功能。

13.7K30
领券