Blogger Information
Blog 15
fans 0
comment 1
visits 10923
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数据库的连接和查询使用----4.24
吴明的博客
Original
609 people have browsed it

总结: mysqli 连接数据库的方法使用,单个查询的常见写法如下,需要熟悉,常见数据库查询函数的掌握

$sql = "SELECT name,salary FROM staff";

if($result = mysqli_query($db,$sql)){

if($res = mysqli_num_rows($result)>0){

while($row = mysqli_fetch_assoc($result)){

var_export(print_r($row),true);

}

}

}else{

exit(mysqli_errno($db).':'.mysqli_error($db));

}

mysqli_free_result($result);

实例
<?php
/* 配置数据库连接参数
*/header("Content-Type:text/html;charset=utf-8");
 define('DB_HOST','localhost');
 define('DB_USER','root');
 define('DB_PASS','');
 define('DB_NAME','php');
 define('DB_CHAR','utf8');

 $db = mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
 if(mysqli_connect_errno($db)){
 	exit('连接失败'.mysqli_connect_error($db));
 }

 mysqli_select_db($db,DB_NAME);
 mysqli_set_charset($db,DB_CHAR);
 echo'连接成功';
//  
//4.关闭连接$sql = "INSERT staff SET name='灭绝师太',sex=1, age=58, salary=9999";

// //3.执行查询:成功返回true,失败返回false
// //$res = mysqli_query($db, $sql);
// //var_dump($res);exit;

// if (mysqli_query($db, $sql)) {
//     if (mysqli_affected_rows($db) > 0) {
//         //返回受影响的记录数与新增主键id
//         echo '成功的新增了'.mysqli_affected_rows($db).'条记录,<br>新记录的主键id是:'.mysqli_insert_id($db);

//     } else {
//         echo '没有记录被新增';
//     }
// } else { //项目上线后,不应该将出错信息显示出来,否则会暴露数据库的相关信息
//     exit(mysqli_errno($db).':'.mysqli_error($db));
// }
/*
单记录查询操作
 */

$sql = 	"SELECT name,salary FROM staff";
if($result = mysqli_query($db,$sql)){
	if($res = mysqli_num_rows($result)>0){
		while($row = mysqli_fetch_assoc($result)){
			var_export(print_r($row),true);
		}
	}
}else{
	exit(mysqli_errno($db).':'.mysqli_error($db));
}
mysqli_free_result($result);


/*多语句执行与多结果集处理技术*/
//任务1: 按性别统计工资的平均数,四舍五入后保留2位小数
$sql  = "SELECT sex, ROUND(AVG(salary),2)  FROM staff GROUP BY sex;";
//任务2: 查询年龄大于50的员工信息
$sql .= "SELECT name,age FROM staff WHERE age>50;";
//任务3: 查询工资小于5000的员工信息
$sql .= "SELECT name,salary FROM staff WHERE salary<5000;";
$num = 1;
if(mysqli_multi_query($db,$sql)){
	echo'第'.$num.'个结果子集中的数据:<br>';
	//
	while($result = mysqli_store_result($db)){
		if (mysqli_num_rows($result)>0){
			while($row = mysqli_fetch_array($result,MYSQLI_ASSOC)){
				 print_r($row); //打印输出数据
                echo '<br>';
			}
			mysqli_free_result($result);
		} else{
			echo "当前结果集中没有满足条件的数据";
		}
	}
	//判断当前的结果集中,是否还有更多的记过子集
	if(mysqli_more_results($db)){
		$num++;
		echo '<hr color="red">第'.$num.'个结果子集中的数据:<br>';
		//将结果集指针指向下一个结果子集
		mysqli_next_result($db);
	}
} else{
	exit(mysqli_errno($db).':'.mysqli_error($db));
}
mysqli_close($db);
运行实例 »
点击 "运行实例" 按钮查看在线实例


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post