博客列表 >数据库的连接和查询使用----4.24

数据库的连接和查询使用----4.24

吴明的博客
吴明的博客原创
2018年04月24日 00:57:44605浏览

总结: 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);
运行实例 »
点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议