批改状态:未批改
老师批语:
//1. 创建连接参数
创建连接参数: 因为连接参数不会经常变化,所以推荐使用常量
define ('DB_HOST', 'localhost');
define ('DB_USER', 'root');
define ('DB_PASS', 'root');
define ('DB_NAME', 'php');
define ('DB_CHAR', 'utf8');
//2. 调用连接函数,成功则返回mysqli对象,失败返回false
$db = @mysqli_connect(DB_HOST, DB_USER, DB_PASS);
//var_dump($db);die();
//3. 测试连接是否成功?
//连接失败一定会返回错误编号,可以根据编号判断,也可用 $db是否为false进行判断
if (mysqli_connect_errno($db)) {
exit('连接失败'.mysqli_connect_error($db));
}
//echo '<h1>连接成功</h1>';
//4. 选择要操作的数据库
mysqli_select_db($db, DB_NAME);
//5. 设置默认字符集
mysqli_set_charset($db, DB_CHAR);点击 "运行实例" 按钮查看在线实例
注意:
连接数据库是的配置参数可以单独用一个php脚本存储,这样便于统一管理
<?php
define ('DB_HOST', 'localhost');
define ('DB_USER', 'root');
define ('DB_PASS', 'root');
define ('DB_NAME', 'php');
define ('DB_CHAR', 'utf8');加载数据库参数时,需要加载配置文件
//导入数据库连接参数 require 'mysqli_config.php';
<?php
/医院
* 执行查询
* 1. 数据库的查询:不仅仅包括查询,还包括新增,更新与删除操作,即读写操作,或者访问操作
* 2. 涉及的3个函数:
* 2-1. mysqli_query($db, $sql):执行SQL语句
* 2-2. mysqli_errno($db):返回最后一次函数执行的错误代码
* 2-3. mysqli_error($db):返回最后一次函数执行的错误信息
* 2-4. mysqli_close($db):关闭当前的数据连接
* 3. 查询步骤:
* 3-1.连接数据库
* 3-2.执行查询
* 3-3.关闭数据库连接
*/
//1.连接数据库,require 不是函数,后面不用加括号
require 'mysqli_connect.php';
//2.执行查询
if($res = mysqli_query($db, "SELECT name,salary FROM staff")) {
while($row = mysqli_fetch_assoc($res)) {
var_export($row);
print '<hr>';
}
} else {
exit('查询失败'.mysqli_errno($db).':'.mysqli_error($db));
}
//释放结果集(仅针对select)
mysqli_free_result($res);
//4.关闭数据库连接
mysqli_close($db);点击 "运行实例" 按钮查看在线实例
<?php
/医院
* 向数据表中新增数据
* 用到的函数:
* 1.mysqli_query(),
* 2.mysqli_errno(),mysqli_error(),
* 3.mysqli_affected_rows(),mysqli_insert_id(),
* 4.mysqli_close()
*/
//1.连接数据库
require 'mysqli_connect.php';
//2.准备sql语句
//$sql = "INSERT INTO staff (staff_id,name,sex,age,salary) VALUES (null,'赵敏',1,30,4000)";
//INSERT是标准SQL语法,不仅可插入一条,也可以插入多条,新记录之间用逗号分开,自增主键id可省
//$sql = "INSERT staff (name,sex,age,salary) VALUES
// ('小昭',1,20,2400),('宋青书',0,40,1800),('成昆',0,70,9000)";
//针对MySQL数据库,还有一个更高效的插入数据的方法,不过每次只能插入一条记录
$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));
}
//4.关闭连接
mysqli_close($db);点击 "运行实例" 按钮查看在线实例
<?php
/医院
* 删除数据表中的数据
* 注意: 更新与新增不同,它是基于查询来实现的,推荐也必须要有更新条件
* 用到的函数:
* 1.mysqli_query(),
* 2.mysqli_errno(),mysqli_error(),
* 3.mysqli_affected_rows(),
* 4.mysqli_close()
*/
//1.连接数据库
require 'mysqli_connect.php';
//2.准备sql语句
$sql = "DELETE FROM staff WHERE staff_id=7";
//3.执行查询:成功返回true,失败返回false
if (mysqli_query($db, $sql)) {
if (mysqli_affected_rows($db) > 0) {
//返回受影响的记录数
echo '成功的删除了'.mysqli_affected_rows($db).'条记录';
} else {
echo '没有记录被删除';
}
} else {
exit(mysqli_errno($db).':'.mysqli_error($db));
}
//4.关闭连接
mysqli_close($db);点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号