设为首页 加入收藏

TOP

Mysqli的批量CRUD数据
2015-11-21 01:55:23 来源: 作者: 【 】 浏览:0
Tags:Mysqli 批量 CRUD 数据

学会了使用了mysqli扩展库之后,总体感觉比面向过程的方法更加合理化,面向对象是大势所趋,所以绝不能仅仅只用那一套老的mysql库了,也不利于php对mysql的操作,因为我们在实际的开发中,很多还是面向对象开发的,在这里,就说一下mysqli之所以成为扩展库自然有其理由,就批量操作的特性就大大的提高了代码的执行效率。

还是和以往一样,我喜欢把sql语句分为dql语句和dml语句,主要是根据返回结果来分的,前者是结果集(需要释放),后者是布尔值。

下面是批量操作dml语句的代码:

?

execute_dml($sql);
	//$res->free();*/
	//这是mysqli批量增删改数据
	$mysqli= new MySqli("localhost","root","toor","education");
	if($mysqli->connect_error){
		die("连接失败:".$mysqli->connect_error);
	}
	echo "连接成功
"; /*//批量添加数据 $sql_1.="insert into words (enword,chword) values( 'classroom444','教室');"; $sql_1.="insert into words (enword,chword) values( 'classroom222','教室');"; $sql_1.="insert into words (enword,chword) values( 'classroom333','教室');"; $b=$mysqli->multi_query($sql_1); */ //批量删除数据 /*$sql_2.="delete from words where id=14;"; $sql_2.="delete from words where id=15;"; $sql_2.="delete from words where id=16;"; $sql_2.="delete from words where id=17;"; $sql_2.="delete from words where id=18;"; $sql_2.="delete from words where id=19;"; $sql_2.="delete from words where id=20;"; $sql_2.="delete from words where id=22;"; */ //也可以批量修改。。。。 /*但是不建议和select语句共用*/ $b=$mysqli->multi_query($sql_2); if(!$b){ echo "添加失败"; }else{ echo "添加成功".$mysqli->connect_error; } $mysqli->close(); ?>

?

下面是操作dql语句的代码:相对于dml就有一点复杂了:

?

connect_error){
		die("连接失败:".$mysqli->connect_error);
	}
	echo "连接成功
"; $sql_3.="select * from words;"; $sql_3.="select * from words_test1;"; if($res=$mysqli->multi_query($sql_3)){ do{ $result=$mysqli->store_result(); while($row=$result->fetch_row()){ foreach($row as $key=>$val){ echo "----".$val; } echo "
"; } $result->free(); if(!$mysqli->more_results()){ break; } echo "***********************************************"; }while($mysqli->next_result()); } $mysqli->close(); ?>

主要就是后者返回的是一个结果集的集合,需要一层一层的把它剥开看能够看到东西。

?

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇(2)mysql优化之使用索引优化查询 下一篇Mysql拿指定经纬度与数据库多条经..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: