PHP事务数据库写法,PHP 操作 MySQL 执行数据库事务

$mysqli=new mysqli();//实例化mysqli

$mysqli->connect('localhost','root','admin','test');

if(mysqli_connect_error()){

exit('数据库连接错误,错误信息是.'.mysqli_connect_error());

}

$mysqli->set_charset("UTF8");//设置数据库编码

//首先你必须关闭自动提交数据

$mysqli->autocommit(false);

//创建一个SQL语句,必须同时运行成功,不能出现一个成功,一个失败

$sql .= "UPDATE `friend` SET state=state+5 WHERE id=1;";

$sql .= "UPDATE `flower` SET tg_flower=flower-5 WHERE id=1;";

//执行两条SQL语句

if ($mysqli->multi_query($sql)) {

//获取第一条SQL一影响的行数

$success = $mysqli->affected_rows == 1 ? true : false;

//下移,第二条SQL

$mysqli->next_result();

//获取第二条SQL影响的行数

$success2 = $mysqli->affected_rows == 1 ? true : false;

//判断是否都正常通过了,两个SQL

if ($success && $success2) {

$mysqli->commit();

echo '完美提交!';

} else {

$mysqli->rollback();

echo '程序出现异常!';}

} else {

echo "SQL语句有误:".$mysqli->errno.$mysqli->error;

}

//最后还必须开启自动提交

$mysqli->autocommit(true);

$result->free();//释放查询内存(销毁)

$mysqli->close();//别忘了关闭你的"小资源";

?>

【MySQL】数据库事务深入分析

一.前言 只有InnoDB引擎支持事务,下边的内容均以InnoDB引擎为默认条件 二.常见的并发问题 1.脏读 一个事务读取了另一个事务未提交的数据 2.不可重复读 一个事务对同一数据的读取结果前后不 ...

JDBC操作,执行数据库更新操作

目标: 使用Connection对象取得Statement实例 使用Statement进行数据增删改. Statement接口 要对数据库操作,要使用Statement完成.此接口可以使用Connec ...

Python操作MySQL以及数据库索引

目录 python操作MySQL 安装 使用 SQL注入问题 MySQL的索引 为什么使用索引 索引的种类 主键索引 唯一索引 普通索引 索引优缺点 不会命中索引的情况 explain 索引覆盖 My ...

ASP.NET Core 1.0 使用 Dapper 操作 MySql(包含事务)

操作 MySql 数据库使用MySql.Data程序包(MySql 开发,其他第三方可能会有些问题). project.json 代码: { "version": "1. ...

C#实现执行数据库事务案例

我是实际项目来拆出来做的案例,场景是比如我们在做电商网站时,在创建订单时的一系列操作,通常在创建订单时我们需要数据表的操作有:订单的表头(主表).订单的详细.清空购物车.甚至是修改优惠劵的状态(在使用 ...

用JDBC操作MySQL——大量数据库操作时使用批处理提速

之前所有的操作由于数据量很小,所以没有进行批处理的优化,性能也没有出现明显的恶化,但是随着我用java处理数据量的大幅提高,频繁使用静态SQL语句的方法严重降低了处理效率,这里总结一下JDBC批处理的 ...

php操作mysql(数据库常规操作)

php操作数据库八步走 <?php .建立连接 $connection '); .判断连接是否成功 if (mysqli_connect_error() != null) { die(mysql ...

PHP使用mysqli操作MySQL数据库

PHP的 mysqli 扩展提供了其先行版本的所有功能,此外,由于 MySQL 已经是一个 具有完整特性的数据库服务器 , 这为PHP 又添加了一些新特性 . 而 mysqli 恰恰也支持了 这些新特 ...

Jdbc执行存储过程报数据库事务无法执行的异常

Jdbc执行存储过程报数据库事务无法执行的异常 环境: Eclipse+Jdk1.7+spring-jdbc-3.0.7+同版本的jdbctemplate+Sqlserver 2012 问题: 一个小 ...

随机推荐

&lbrack;转&rsqb;使用Jenkins搭建持续集成&lpar;CI&rpar;环境

转自:魔のkyo的工作室 首先从官网http://jenkins-ci.org/下载 Java Web Archive (.war) 例如我保存到 D:\jenkins\jenkins.war 运行J ...

从程序员到CTO的Java技术路线图(我爱分享)

在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平. Java程序员 高级特性 反射.泛型. ...

转-C&num;让枚举返回字符串

下面的手段是使用给枚举项打标签的方式,来返回字符串 下面分别定义一个属性类,和一个枚举帮助类 [AttributeUsage(AttributeTargets.Field,AllowMultiple  ...

对DataTable&lpar;或者DataSet&rpar;修改后,提交修改到数据库

http://blog.csdn.net/nidexuanzhe/article/details/8228832 说明:通常我们在做数据库交互时,并不一定要使用特定的SQL语句来更新数据,.NET F ...

【数据结构】算法 LinkList &lpar;Merge Two Sorted Lists&rpar;

合并2个有序链表 list A, list B, Solution: 对A,B 表按序读取数据,比较大小后插入新链表C. 由于两个输入链表的长度可能不同,所以最终会有一个链表先完成插入所有元素,则直接 ...

20164301 Exp3 免杀原理与实践

Exp3 免杀原理与实践  1. 实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应 ...

迅为-ARM嵌入式开发一体化工业9&period;7寸屏幕 平板式智能触控屏

产品名称:迅为9.7寸IPS高清屏幕 适用于:[iTOP-4412精英版][iTOP-4412全能版][iTOP-4418开发板][迅为-iMX6开发板] 分辨率:1024*768 触摸屏类型:电容屏 ...

TRAC-IK机器人运动学求解器

TRAC-IK和Orocos KDL类似,也是一种基于数值解的机器人运动学求解器,但是在算法层面上进行了很多改进(Specifically, KDL’s convergence algorithms ...

PHP连接Memcache代码

<?php $mem = new Memcache; $mem->connect('127.0.0.1', 11211) or die ("Could not connect&q ...

js两个日期相减

function dateHanle(d1,d2){ if(Date.parse(d1) - Date.parse(d2)==0) { console.log("d1等于d2"); ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用下面的代码来连接MySQL数据库: <?php $host = 'localhost'; $username = 'username'; $password = 'password'; $dbname = 'databasename'; // 创建连接 $conn = new mysqli($host, $username, $password, $dbname); // 检测连接 if ($conn->connect_error) { die('连接失败:'.$conn->connect_error); } echo '连接成功'; ?> ### 回答2: 以下是一个用PHP连接MySQL数据库的示例页面的代码: ```php <?php // 定义数据库连接参数 $servername = "localhost"; // 数据库服务器地址 $username = "root"; // 数据库用户名 $password = "password"; // 数据库密码 $dbname = "mydb"; // 数据库名称 // 创建数据库连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查数据库连接是否成功 if ($conn->connect_error) { die("数据库连接失败: " . $conn->connect_error); } echo "数据库连接成功"; // 在这里可以执行各种数据库操作,比如查询、插入、更新等 // 关闭数据库连接 $conn->close(); ?> ``` 以上代码首先定义了数据库连接参数,包括服务器地址、用户名、密码和数据库名称。然后使用`mysqli`类创建一个数据库连接对象,并检查连接是否成功。若连接失败,则会输出错误信息。若连接成功,则会输出"数据库连接成功"。在这之后,你可以根据你的需求执行各种数据库操作。最后,通过`$conn->close()`关闭数据库连接。 注意:上述示例使用了`mysqli`类来连接MySQL数据库,这是PHP官方推荐的面向对象的MySQL连接方法。此外,为了保证安全性,建议使用预处理语句来执行SQL查询,以防止SQL注入攻击。上述示例只是一个连接数据库的基本示例,你可以根据你的具体需求来进一步完善和扩展。 ### 回答3: 要一个使用PHP连接MySQL数据库的页面,需要按照以下几个步骤进行操作: 第一步,需要在PHP代码中使用mysqli_connect函数进行连接。首先需要定义数据库的主机名、用户名、密码以及数据库名。比如我们假设数据库的主机名为localhost,用户名为root,密码为123456,数据库名为testdb,那么代码如下: ```php $host = 'localhost'; $username = 'root'; $password = '123456'; $dbname = 'testdb'; $conn = mysqli_connect($host, $username, $password, $dbname); if (!$conn) { die('无法连接到数据库: ' . mysqli_connect_error()); } ``` 第二步,可以执行一些对数据库操作。比如,可以使用mysqli_query函数来执行查询语句,然后使用mysqli_fetch_assoc函数来获取查询结果的每一行数据。比如我们假设有一个名为users的表,里面有id和name两个字段,那么可以使用以下代码来查询并输出每一行数据: ```php $query = "SELECT * FROM users"; $result = mysqli_query($conn, $query); if (!$result) { die('查询失败: ' . mysqli_error($conn)); } while ($row = mysqli_fetch_assoc($result)) { echo 'ID: ' . $row['id'] . ', Name: ' . $row['name'] . '<br>'; } ``` 第三步,需要在页面结束时关闭数据库连接,以释放资源。可以使用mysqli_close函数来关闭连接: ```php mysqli_close($conn); ``` 以上就是一个简单的使用PHP连接MySQL数据库的页面的写法。当然,还可以进行更多的操作,比如插入、更新和删除数据等等。根据实际需求,可以根据以上的步骤作出适当的调整和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值