tnblog
首页
视频
资源
登录
有个性,不需要签名
排名
2
文章
634
粉丝
44
评论
93
Linq or Sql 取树末级节点
剑轩 : 这个方法是真的帅!
Python实例 2-12306抢票(二) 下单
18335584353 : 哥。我也是总返回url":"/leftTicket/init",&quot...
Visual Studio小技巧
剑轩 : [斜眼笑][斜眼笑]开会完了认真看了一遍
C#网络流读取(图片)
风清月 : 把一个图片放到字节数组里边[发呆](`・ω・´)
C#与Java二进制编码转换,补码
风清月 : 我勒个擦.....有时间这种问题很坑很难发现哇o(╥﹏╥)o
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

Mysql 游标创建

6874人阅读 2019/2/19 15:14 总访问:286616 评论:4 收藏:0 手机
分类: sql

游标:可以来存储一个结果集,可以通过遍历来访问到每一个数据


需求:分表数据。 把一张表的数据根据需求分离,创建不同的表 并写入数据。


  1. drop procedure if exists dataMove; /*删除已有的存储过程*/
  2. create procedure dataMove()
  3. begin
  4.     declare tablename_fix varchar(64); /*定义表的尾号*/
  5.    declare flag boolean  default true;/*判断游标是否结束*/
  6.     
  7.    declare fix_cursor cursor for 
  8.     select fix from tablea group by fix; /*定义游标 把table_suffix列分组出来 放到游标中*/
  9.         
  10.    declare continue handler for not found set flag = false;/*游标结束时 标识改为false*/
  11.     open fix_cursor;/*打开游标*/
  12.     fetch fix_cursor into tablename_fix; /*把游标里的数据取出来放到这个变量中*/
  13.     while flag do
  14.        set @tablename = concat('tablea',tablename_fix);/*concat() 拼接方法 就是+''+, 表名 原始名字+尾号列*/
  15.         /*根据表名创建表,把对应满足的数据放到创建的表中 如果已经有了表 就得改方式*/
  16.         set @sqlstr =concat('create table ', @tablename,'( SELECT * FROM tablea where fix=',tablename_fix,');'); 
  17.         PREPARE STMT FROM @sqlstr; /*这三句执行销毁sql*/
  18.         EXECUTE STMT;   
  19.         DEALLOCATE PREPARE STMT;
  20.    
  21.    fetch fix_cursor into tablename_fix; /*游标指针往下一行*/
  22.     
  23.    end while;
  24.     close fix_cursor;
  25. end;
  26. /*调用*/
  27. call dataMove()



效果

tablea主表,


12345是游标自动创建的



欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价

Mysql主从复制+读写分离

使用Mysql读写分离和主从复制的原因:*单台MySQL服务器的安全性,高可用性,高并发都是不满足实际的生产需要。介绍:1.MySQ...

Mysql控制台插入中文数据报错1366解决

计算机配置: windows系统.数据库:MySQL5.5.如图 : 下图为表结构信息:通过 show full columns from userinfo;查询所得 na...

Mysql 存储过程报错:delimiter

最近刚学sql,学到了存储过程,每当练习的时候就一直出现问题。 现在记录CREATEPROCEDUREproc_out(OUTstuidINT) begin se...

Mysql 视图的(增删改 查)

要显示视图的定义,需要在SHOWCREATEVIEW子句之后指定视图的名称, 我们先来创建几张表,完事后在进行演示:--用户信息表...

Mysql概述与安装配置

1996年首次发行,对于初学者来说,MySQL很容易上手MySQL数据库MySQL 是开源的,所以你不需要支付额外的费用。MySQL 支持大...

Mysql存储引擎和数据类型

一 了解MySQL存储引擎什么是MySQL存储引擎?MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技...

本地Mysql重置密码

原理:通过跳过表授权,跳过密码直接在表里更新密码1. 找到my.ini一般在C:\Program Files\MySQL\MySQL Server 5.7\bin12345...

Mysql数据库基础

1 数据库和表操作 2 数据操作 3 高级查询 4 mysql管理1 数据库和表操作 数据库 创建:create database 数据库名 [default ...

Mysql基础

1.创建、修改和删除 表是数据库存储数据的基本单位、一个表包含若干个字段或记录、表的操作包括创建新表、修改表和删除表。...

EF连接Mysql连接Mysql数据库操作中文数据乱码解决方法

修改数据库的连接字符器在连接字符器添加charset=gb2312。注意事项:(1)字符编码不支持UTF8。(2)必须使用规定编码。示例:&...

EF连接Mysql数据库

注意事项准备工作(1)下载MySQL数据库软件6.6.6版本。 (2)下载MySQL数据库mysql-connector-net-6.6.6两者不一样都不能少。(...

VS2017安装Mysql加载驱动

部署安装环境运行MySQL和VS2017软件下载MySQL-for-visualstudio-msiMySQL-connector-net-6.6.6-msi安装版本6.10.5和6.9.9在...

shell脚本强制修改Mysql --root密码

话不多说直接拿去撸;PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHread -p &quot...

Navicat 连接Mysql时报错代码1405

好久不见我们又见面了今天给大家分享的是Navicat连接mysql时报1405的错 话不多说直接上图片遇到这个错时第一种情况:看一...

Mysql未能加载文件或程序集“Ubiety.Dns.Core”或它的某一个依赖项 问题的解决

在VS2019中使用Nuget的方式添加了最新的MySQL包 MySql.Data 8.0.19 ,默认添加了个Ubiety.Dns.Core,不知道有什么用,但是...