700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > mysql中对数据库的每个表执行优化的存储过程【MySQL】

mysql中对数据库的每个表执行优化的存储过程【MySQL】

时间:2023-05-07 14:59:01

相关推荐

mysql中对数据库的每个表执行优化的存储过程【MySQL】

数据库|mysql教程

数据库,mysql

数据库-mysql教程

网络课程网源码,zynq移植ubuntu桌面,爬虫玩具汽车视频,php bean,壹帆seolzw

mysql中对数据库的每个表执行优化的存储过程

网页js特效源码,vscode接口日志,john ubuntu,tomcat中bind,vb怎么连接sqlite教程,dedecms 多说插件,最常用的前端ui框架,长尾关键词挖掘爬虫,开源考试 php,上饶谷歌seo公司,qq视频的网站源码,简单的网页表白源码,免费系统登录模板下载lzw

对数据库的每个表执行优化的存储过程

h5积分源码,什么电脑是Ubuntu,家里室内长爬虫,php日期时差,dns错误seolzw

CREATE PROCEDURE `inventory`.`optimize_table` (db_name VARCHAR(64))BEGIN DECLARE t VARCHAR(64); DECLARE done INT DEFAULT 0; DECLARE c CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=db_name AND TABLE_TYPE=BASE TABLE; DECLARE CONTINUE HANDLER FOR SQLSTATE 2000 SET done=1; OPEN c; tables_loop:LOOP FETCH c INTO t; IF done THEN CLOSE c; LEAVE tables_loop; END IF; SET @stmt_text:=CONCAT("OPTIMIZE TABLE ",db_name,.,t); PREPARE stmt FROM @stmt_text; EXECUTE stmt; DEALLOCATE PREPARE stmt; END LOOP; CLOSE c;END语句2:CREATE PROCEDURE `inventory`.`optimize_tables2` (db_name VARCHAR(64))BEGIN DECLARE t VARCHAR(64); DECLARE done INT DEFAULT 0; DECLARE c CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=db_name AND TABLE_TYPE=BASE TABLE; DECLARE CONTINUE HANDLER FOR SQLSTATE 2000 SET done=1; OPEN c; REPEAT FETCH c INTO t; IF NOT done THEN SET @stmt_text:=CONCAT("OPTIMIZE TABLE ",db_name,.,t); PREPARE stmt FROM @stmt_text; EXECUTE stmt; DEALLOCATE PREPARE stmt; END IF; UNTIL done END REPEAT; CLOSE c;END调用时为call optimize_tables2(库名);或者call optimize_tables(库名);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。