• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > 在Mysql存储过程中使用事务实例

在Mysql存储过程中使用事务实例

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了mysql存储过程实例,mysql存储函数实例,mysql存储过程,mysql存储过程教程,mysql存储过程语法等相关知识,希望本文的分享对您有所帮助

    declare err INT default 0;#声明一个整形变量err,默认值是0
    declare continue handler for sqlexception set err=1;#当sqlexception handler捕捉到异常时,设置err=1

    START TRANSACTION;#开始事务

    WHILE flag>0 DO #注意: while不能空实现(在while块中,里面必须有语句)

        #uuid()函数得到的字符串是'6ccd780c-baba-1026-9564-0040f4311e29',剔除里面的-,得到一个32位的字符串
        SET uuidStr = REPLACE(UUID(),'-','') ;
        #得到当前的时间
        SET currentTime = CURRENT_TIMESTAMP();
        #执行插入语句,注意连接字符串的函数concat(str1,str2,...);其中str..也可以是数字类型
        INSERT INTO
                                表名称
                                (id,title,keyword,hasImage,isTodayHead,isShowInHome,isBigness,publishTime,originId,modify_time,isAnalysis)
                     VALUE
                                (uuidStr,CONCAT('事件标题',flag),CONCAT('关键字',flag),1,1,0,0,currentTime,CONCAT('xxxxxxx',flag),currentTime,1);
        #每循环一次,flag要减去1,注意没有flag--的语法
        set flag = flag-1;

        #在这里测试当err=1时,事务是否有了回滚,测试ok
        #IF flag=7 THEN   #注意在procedure中给变量赋值要用到set,或在变量声明时用default来父子,所以=号可以用来比较两边的值是否相等,<=>也可,区别先不去纠结。
                #set err=1;
        #END if;
    END WHILE;

    IF (err=0) THEN
        commit;
        select 'OK';
     ELSE
        rollback;
        select 'err';
     END IF;

END;
</div>

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • mysql 精简过程(删除一些文件)
  • mysql存储过程 在动态SQL内获取返回值的方法详解
  • 基于mysql多实例安装的深入解析
  • Mysql DNS反向解析导致连接超时过程分析(skip-name-resolve)
  • 一次非法关机导致mysql数据表损坏的实例解决
  • mysql存储过程事务管理简析
  • mysql存储过程详解
  • Mysql使用大全 从基础到存储过程
  • mysql多次调用存储过程的问题
  • mysql 让一个存储过程定时作业的代码

相关文章

  • 2018-12-05MYSQL的排序sql语句
  • 2017-05-11Mysql 的存储引擎,myisam和innodb的区别
  • 2018-12-05MySQL 管理
  • 2018-12-05myslq 锁表问题的解决方法
  • 2017-05-11MySQL 联合索引与Where子句的优化 提高数据库运行效率
  • 2018-12-05mysql -参数thread_cache_size优化方法 小结
  • 2017-05-11浅析MYSQL REPEATABLE-READ隔离级别
  • 2018-12-05探秘mysql中的timeout
  • 2017-05-11MySQL修改配置 区分大小写
  • 2018-12-05MySQL优化之-索引具体代码分析

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • mysql如何处理varchar与nvarchar类型中的特殊字符
    • MySql在Linux下安装和Mac下的配置详解(图)
    • 高性能MySQL-查询缓存介绍
    • Mysql Cluster的备份和恢复
    • MYSQL 优化常用方法
    • Oracle insert的扩展
    • php开启mysqli扩展之后如何连接数据库
    • MySQL安装图文详解
    • 分享一个MySQL ReplicationDriver类代码
    • 关于mysql general log 的相关操作

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有