mysqli扩展库应用---批量执行sql语句
1, mysqli批量执行sql语句。基本语法:
$sqls=”sql1;sql2;………”
mysqli::multi_query($sqls);
同一个$sqls要么是增删改语句集合,要么是查询语句的集合,查询语句和增删改最好不要混合。应用示例如下:
① 操作数据库的代码:
<?php
class mysqliMutiTool{
private $mysqli = null;
private static $host = "127.0.0.1";
private static $user = "root";
private static $password = "123456";
private static $db = "test"; public function __construct(){
$this->mysqli = new MySQLi(self::$host,self::$user,self::$password,self::$db);
if($this->mysqli->connect_error){
die("连接错误".$this->mysqli->connect_error);
}
// $this->mysqli->muti_query("set names utf-8");
} public function execute_query($sqls){
$res = $this->mysqli->multi_query($sqls);
return $res;
} public function getError(){
return $this->mysqli->error;
} public function getMysqli(){
return $this->mysqli;
} public function closeConn(){
$this->mysqli->close();
} }
② 增删改操作
<?php
require "mysqliMutiTool.class.php"; $mysqliMuti = new mysqliMutiTool();
$sqls = "insert into user1 (name,password,email,age) values('宋江','aaa','songjiang@126.com',56);";
$sqls .= "insert into user1 (name,password,email,age) values('卢俊义','bbb','lujunyi@126.com',46);";
$sqls .= "insert into user1 (name,password,email,age) values('吴用','ccc','wuyong@126.com',54);";
$sqls .= "update user1 set name = '吴用2' where id = 12;";
$sqls .= "delete from user1 where id = 15;";
$res = $mysqliMuti->execute_query($sqls);
if($res){
echo "操作成功!";
}else{
echo "".$mysqliMuti->getError();
}
$mysqliMuti->closeConn();
③ 查询操作
<?php
require "mysqliMutiTool.class.php"; $mysqliMuti = new mysqliMutiTool();
$sqls = "select * from user1;";
$sqls .= "select * from words;"; $res = $mysqliMuti->execute_query($sqls); $mysqli = $mysqliMuti->getMysqli();
if($res){
do{
//从mysqli连接取出第一个结果集
$result = $mysqli->store_result();
//显示mysqli result对象
while($row=$result->fetch_row()){
foreach($row as $key=>$val){
echo "--$val";
}
echo "<br/>";
}
$result->free();
echo "<br/>*******************新的结果集*******************<br/>";
}while($mysqli->next_result());
}
$mysqliMuti->closeConn();
mysqli扩展库应用---批量执行sql语句的更多相关文章
- PHP mysqli 增强 批量执行sql 语句的实现代码
本篇文章介绍了,在PHP中 mysqli 增强 批量执行sql 语句的实现代码.需要的朋友参考下. mysqli 增强-批量执行sql 语句 <?php //mysqli 增强-批量执行sql ...
- 批量执行sql语句
基本使用 $sqls="sql语句1;sql语句2;sql语句n"; 或 $sqls="insert into xx;"; $sqls.="inse ...
- SQL*PLUS中批量执行SQL语句
SQL*PLUS中批量执行SQL语句 今天由于工作的需要,要在CMD中批量执行大量的SQL语句,对于Oracle学习还处在入门阶段的我,只能硬着头皮到处去寻找资料(主要是网络资料,也包括自己的电子书) ...
- c#实现用SQL池(多线程),定时批量执行SQL语句 【转】
在实际项目开发中,业务逻辑层的处理速度往往很快,特别是在开发Socket通信服务的时候,网络传输很快,但是一旦加上数据库操作,性能一落千丈,数据库操作的效率往往成为一个系统整体性能的瓶颈.面对这问题, ...
- c#实现用SQL池(多线程),定时批量执行SQL语句
在实际项目开发中,业务逻辑层的处理速度往往很快,特别是在开发Socket通信服务的时候,网络传输很快,但是一旦加上数据库操作,性能一落千丈,数据库操作的效率往往成为一个系统整体性能的瓶颈.面对这问题, ...
- JDBC连接MYSQL,批量执行SQL语句或在执行一个SQL语句之前执行一个SQL语句
conn = MysqlJdbcUtils.getConnection(); Statement ps=conn.createStatement(); ps.addBatch("trunca ...
- Jmeter(三十八)Jmeter Question 之 ‘批量执行SQL语句’
知识使我们变得玩世不恭,智慧使我们变得冷酷无情,我们思考的太多,感知太少,除了机器,我们更需要人性,除了智慧,我们需要仁慈和善良. ------出自查理卓别林的演讲 前面有提到Jmeter使用JDBC ...
- executeBatch()批量执行Sql语句
executeBatch()方法:用于成批地执行SQL语句,但不能执行返回值是ResultSet结果集的SQL语句,而是直接执行stmt.executeBatch(); addBatch():向批处理 ...
- 批量执行SQL语句,进行删除,插入或者更改。
private bool ExecuteTransaction(List<string> list) { using (SqlConnection connection = new Sql ...
随机推荐
- GameObject.Active
[GameObject.Active] 用于控制一个对象是否激活,一个对象激活当且本身active=true,并且它的父结点也都active.相当API有: 1)GameObject.SetActiv ...
- shell-array
[shell-array] Creating Array: $ names=("Bob" "Peter" "$USER" "Big ...
- Android中自定义ListView实现上拉加载更多和下拉刷新
ListView是Android中一个功能强大而且很常用的控件,在很多App中都有ListView的下拉刷新数据和上拉加载更多这个功能.这里我就简单记录一下实现过程. 实现这个功能的方法不止一个,Gi ...
- 01 lucene基础 北风网项目培训 Lucene实践课程 Lucene概述
lucene-core-2.4.1.jar是lucene开发的核心jar包,lucene-analyzers-2.4.1.jar也是必不可少的.lucene-highlighter-2.4.1.jar ...
- iOS 10 适配 ATS(app支持https通过App Store审核)
iOS 10 适配 ATS 一. HTTPS 其实HTTPS从最终的数据解析的角度,与HTTP没有任何的区别,HTTPS就是将HTTP协议数据包放到SSL/TSL层加密后,在TCP/IP层组成IP数据 ...
- 670. Maximum Swap 允许交换一个数 求最大值
[抄题]: Given a non-negative integer, you could swap two digits at most once to get the maximum valued ...
- ZPL语言说明文档
■格式命令(format commands) 以︿开始 用于设定标签格式与数据 多条格式指令按顺序执行 ■控制指令(control commands) 以~开始 迫使打印机立即执行某一个指令的操作 可 ...
- Java泛型中的通配符
Java泛型中的通配符可以直接定义泛型类型的参数.而不用把该函数定义成泛型函数. public class GenericsTest { public static void main(String[ ...
- Video组件:控制视频的播放与暂停
来自<sencha touch权威指南>第10章,315页开始 app.js代码如下: Ext.require(['Ext.Video','Ext.MessageBox','Ext.Too ...
- java简单例子介绍IOC和AOP
IOC和AOP的一些基本概念 介绍 IOC 一.什么是IOC IoC就是Inversion of Control,控制反转.在Java开发中,IoC意味着将你设计好的类交给系统去控制,而不是在你的类内 ...