在存储过程中可以使用临时表,下面有一个分割字符串的例子

语法

1.创建:create temporary table 表名(列信息);

2.删除:drop table 表名;

3.清空:truncate table 表名;

注意:

1.在mysql中,临时表一但建立,销毁的条件是session中断,所以为了避免创建过程中出现“table 'XX' already exists”的错误,将建表语句改为CREATE TEMPORARY TABLE if not exists 表名(列信息);

2.临时表只有在用户退出连接时(session中断)时,清空数据,不然数据一直累积,若有需求,需要在临时表使用之后清空临时表

例子

一个和java的spilt作用相似存储过程

CREATE DEFINER=`root`@`%` PROCEDURE `str_spilt`(IN `str` varchar(2000))

BEGIN

#分割字符串

set @i=0;

CREATE TEMPORARY TABLE if not exists str_spilt_result(id BIGINT(20) NOT NULL);

truncate table str_spilt_result;

SET @cnt = 1+(LENGTH(str) - LENGTH(REPLACE(str,',','')));

WHILE @i < @cnt DO

SET @i = @i + 1;

SET @result = REVERSE(SUBSTRING_INDEX(REVERSE(SUBSTRING_INDEX(str,',',@i)),',',1));

INSERT INTO str_spilt_result(id) VALUES (@result);

END WHILE;

SELECT * from str_spilt_result;

END

mysql drop temporary_mysql存储过程----临时表 temporary相关推荐

  1. mysql temporary_MySQL中临时表(TEMPORARY)

    首先来看看官网给的有关MySQL的临时表的简介: In MySQL, a temporary table is a special type of table that allows you to s ...

  2. mysql 存储过程临时表_在MySQL存储过程中创建的临时表的范围

    问题撤销!当我拼写正确的一切,问题消失了! 我有一个MySQL存储过程创建一个临时表.当我从mysql提示符调用过程时,它似乎运行成功,但是如果我从临时表中选择COUNT(*),我会收到一个错误,表示 ...

  3. mysql 5.7临时表空间_深度解析MySQL 5.7之临时表空间

    临时表 临时表顾名思义,就是临时的,用完销毁掉的表. 数据既可以保存在临时的文件系统上,也可以保存在固定的磁盘文件系统上. 临时表有下面几种: 1.全局临时表 这种临时表从数据库实例启动后开始生效,在 ...

  4. mysql jdbc 创建存储过程_mysql JDBC 调用存储过程

    与oracle不同,mysql不支持匿名块,如果需要写过程语句,则必需定义存储过程.如果你会oracle的存储过程,那么mysql的存储过程也很简单了. 一.创建存储过程 create procedu ...

  5. MySql数据库学习--存储过程(1)

    在MySQL 5中,终于引入了存储过程这一新特性,这将大大增强MYSQL的数据库处理能力.在本文中将指导读者快速掌握MySQL 5的存储过程的基本知识,带领用户入门. 存储过程介绍 存储过程是一组为了 ...

  6. MySQL 笔记8 -- 存储过程和索引

    MySQL 笔记8 – 存储过程和索引 MySQL 系列笔记是笔者学习.实践MySQL数据库的笔记 课程链接: MySQL 数据库基础入门教程 参考文档: MySQL 官方文档 SQL 教程 一.存储 ...

  7. mysql 5.0存储过程学习总结

    mysql 5.0存储过程学习总结 一.创建存储过程 1.基本语法: create procedure sp_name() begin --- end 2.参数传递 二.调用存储过程 1.基本语法:c ...

  8. 关于mysql触发器和存储过程的理解

    内容源自:一篇很棒的 MySQL 触发器学习教程 一.触发器概念 触发器(trigger):监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊 ...

  9. mysql数据库的存储过程不用学吗,MySql数据库之存储过程学习_MySQL

    之前在工作中总是听别人提到存储过程,觉得是个很高深的东西,利用工作之余,看了下相关的知识,现将学习知识总结如下,希望可以为刚学习的人提供些许帮助. 开发环境:Navicat For Mysql. My ...

最新文章

  1. php sqlsrv_query,sqlsrv_query
  2. 你要的Spring Boot多图片上传回显功能已经实现了,赶紧收藏吃灰~
  3. linux用户和组帐户管理
  4. 安装完CentOS可以不做的事
  5. git本地ben远程分支_Git本地分支和远程分支关联
  6. 汉字正字表达式解决方案
  7. Eclipse Java注释模板设置详解
  8. 用Middleware给ASP.NET Core Web API添加自己的授权验证
  9. React开发(199):参数请求错误修改请求
  10. 关于tomcat的思考
  11. 使用qsort()和bsearch()函数对值和字符串进行排序和查找
  12. 利用Caffe训练模型(solver、deploy、train_val)+python使用已训练模型
  13. filenet安装-总结安装一天的成果
  14. Java zip文件加注释_java.util.zip.ZipEntry.setComment(String comment)方法示例
  15. java项目代码加密
  16. segment routing详解十一问
  17. 少爷的云台山漂流记:山崖水畔的狂欢
  18. vue PC端项目打包成windows桌面程序
  19. 我读经典(5):读《大话重构》迷你书有感
  20. 四川麻将出现天胡与地胡的概率

热门文章

  1. Python学习指南:介绍
  2. echarts地图海南省地图问题
  3. 把一个人的特点写具体作文_把一个人的特点写具体作文600字
  4. Compound 治理——提案
  5. mfc设置半透明对话框
  6. 04刘笑维-05刘洪雨-实训一
  7. 在c语言中输出8进制数,16进制数
  8. 数据科学与大数据技术
  9. PIR人体感应AC系列感应器投光灯人体感应开关等应用定制方案
  10. 生成微信支付二维码及微信支付