使用mysqli_connect()连接数据库
//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); //3. 测试连接是否成功? //连接失败一定会返回错误编号,可以根据编号判断,也可用 $db是否为false进行判断 if (mysqli_connect_errno($db)) { exit('连接失败'.mysqli_connect_error($db)); } //4. 选择要操作的数据库 mysqli_select_db($db, DB_NAME); //5. 设置默认字符集 mysqli_set_charset($db, DB_CHAR);
运行实例 »
使用mysqli_query()插入数据
//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);
运行实例 »
使用mysqli_query()删除数据
<?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);
运行实例 »
使用mysqli_query()更新数据
<?php /** * 更新数据表中的数据 * 注意: 更新与新增不同,它是基于查询来实现的,推荐也必须要有更新条件 * 用到的函数: * 1.mysqli_query(), * 2.mysqli_errno(),mysqli_error(), * 3.mysqli_affected_rows(), * 4.mysqli_close() */ //1.连接数据库 require 'mysqli_connect.php'; //2.准备sql语句 $sql = "UPDATE staff SET salary=2900 WHERE staff_id=8"; //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);
运行实例 »
使用mysqli_query()查询数据
<?php /** * 查询操作之简化版 */ //1.连接数据库,require 不是函数,后面不用加括号 require 'mysqli_connect.php'; //2.准备SQL语句 $sql = "SELECT name,salary FROM staff"; //3.执行查询:成功会返回结果集对象,失败返回false if ($result = mysqli_query($db, $sql)){ if (mysqli_num_rows($result) > 0) { while($row = mysqli_fetch_assoc($result)) { var_export(print_r($row),true); echo '<hr>'; } } } else { exit(mysqli_errno($db).':'.mysqli_error($db)); } //4.释放结果集(仅针对select) mysqli_free_result($result); //5.关闭数据库连接 mysqli_close($db);
运行实例 »