收 藏 投 稿 繁 体 RSS 
站长吧-中国站长学习与交流的网站
首 页 运 营 学 院 建 站 论 坛
Web master8.net  
 网站运营  
  欢迎在本站发布信息,在线投递稿件请点这里。编辑QQ:4908220,欢迎联系交流。
业界动态 创业故事 推广研究 策划盈利 电子商务 企业平台
  站长工具
SEO查询 Whois查询 Pr查询 域名查询 IP查询 网页编辑器
 建站服务  
  如有建站意向,请尽快联系我们,以便安排时间... 建站服务 QQ4908220 QQ:4908220
作品展示 服务范围 服务流程 服务报价 联系方式 付款方式
文章正文  » 您的当前位置: 首页 >> 学院 >> 数据库 >> MySQL
MYSQL高级特性 — 事务处理
  来源:互联网 | 时间:2006-10-26 | 浏览:   相关评论 | 报告错误 | 发布文章
【字号: | | 】 【背景色 杏仁黄 秋叶褐 胭脂红 芥末绿 天蓝 雪青 灰 银河白(默认色)
  • 下面以两个银行账户之间的转账为例子进行演示。
    要使用MySQL中的事务处理,首先需要创建使用事务表类型(如BDB = Berkeley DB或InnoDB)的表。

    CREATE TABLE account (
    account_id 
    BIGINT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    balance 
    DOUBLE
    ) TYPE 
    = InnoDB;

    要在事务表上使用事务处理,必须要首先关闭自动提交:
    SET AUTOCOMMIT = 0;
    事务处理以BEGIN命令开始:
    BEGIN;
    现在mysql客户处在于服务器相关的事物上下文中。任何对事务表所做的改变在提交之前不会成为永久性的改变。
    UPDATE ACCOUNT SET balance = 50.25 WHERE account_id = 1;
    UPDATE ACCOUNT SET balance = 100.25 WHERE account_id = 2;
    在做出所有的改变之后,使用COMMIT命令完成事务处理:
    COMMIT;
    当然,事务处理的真正优点是在执行第二条语句发生错误时体现出来的,若在提交前终止整个事务,可以进行回滚操作:
    ROLLBACK;

    下面是另一个例子,通过MYSQL直接进行数学运算:
    SELECT @first := balance FROM account WHERE account_id = 1;
    SELECT @second := balance FROM account WHERE account_id [] 
  • master8
  • 上一篇:网页播放器代码大全
  • 下一篇:Skype出台海外赔偿方案

  • 我要投稿  打印本文  推荐本文  加入收藏  返回顶部  关闭窗口
    搜模板(www.somoban.com) 原创网站模板交易平台
    阿里妈妈再掀疯狂采购风,网站广告位严重告急,急召天下站长
    基于PHP+MySQL的整站、模块、插件开发等或者按需求实现相应功能;
基于各PHP主流建站系统CMS,BBS,BLOG等的模板定制,完全手写代码;
整站数据迁移或备份恢复;网页代码优化、重构;整站常规SEO优化;网站技术支持;
点击了解详情...
    站长论坛
    • 验证码: