> 데이터 베이스 > MySQL 튜토리얼 > 基于mysql事务、视图、存储过程、触发器的应用分析_MySQL

基于mysql事务、视图、存储过程、触发器的应用分析_MySQL

WBOY
풀어 주다: 2016-06-01 13:24:19
원래의
993명이 탐색했습니다.

bitsCN.com

一 ,mysql事务

MYSQL中只有INNODB类型的数据表才能支持事务处理。

启动事务有两种方法

(1) 用begin,rollback,commit来实现

begin  开始一个事务
rollback   事务回滚
commit    事务确认

(2)直接用set来改变mysql的自动提交模式

set autocommit=0 禁止自动提交
set autocommit=1 开启自动提交

demo

header("Content-type:text/html;charset=utf-8");
mysql_pconnect("localhost","root","") or die("数据库连接失败");
mysql_select_db("test");
mysql_query("set names utf8");
//开启一个事务
//mysql_query("BEGIN");
//mysql_query("START TRANSACTION");
//mysql_query("SET AUTOCOMMIT=1");//设置事务不自动提交 mysql默认是自动提交
mysql_query("SET AUTOCOMMIT=1");//开启事务
$sql1 = "INSERT INTO `test`values ('2222','测试数据')";
$sql2 = "INSERT INTO `test` values ('111','sss','22')";//特地写的错误
$res1 = mysql_query($sql1);
$res2 = mysql_query($sql2);
if($res1 && $res2)
{
    mysql_query("COMMIT");
    echo "事务提交";
}else{
    mysql_query("ROLLBACK");
    echo "事务回滚";
}
mysql_query("END");

bitsCN.com
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿