· 面向对象的方法:
$db = new mysqli('hostname', 'username', 'password', 'dbname');
· 面向过程的方法:
$db = mysqli_connect('hostname', 'username', 'password', 'dbname');
· 连接结果的检查:
if (mysqli_connect_errno()) { echo 'Error: Could not connect to database.'; exit; }
mysqli_connect_errno()将在连接错误时返回一个错误号,成功则返回0。
· 面向对象的方法:
$db->select_db(dbname);
· 面向过程的方法:
mysqli_select_db(db_resource, db_name);
· 面向对象的方法:
$query = "select * from table table_name"; $result = $db->query($query);
返回一个结果对象,执行失败则返回false。
· 面向过程的方法:
$query = "select * from table table_name"; $result = mysqli_query($db, $query);
返回一个结果资源,执行失败则返回false。
· 面向对象的方法:
$num_results = $result->num_rows;
当使用面向对象的方法时,返回的行数保存在结果对象的num_rows成员变量中。
for ($i=0; $i < $num_results; $i++) { $row = $result->fetch_assoc(); $value = $row[key]; ... }
· 面向过程的方法:
$num_results = mysqli_num_rows($result);
当使用面向过程的方法时,调用mysqli_num_rows()可以得到返回的行数。
for ($i=0; $i < $num_results; $i++) { $row = mysqli_fetch_assoc($result); $value = $row[key]; ... }
· 其他的方法:
1)将结果取回到一个枚举数组中:
· 面向对象的方法:
$row = $result->fetch_row();
· 面向过程的方法:
$row = mysqli_fetch_row($result);
然后通过下标访问即可($row[0], $row[1]...)。
2)将结果取回到一个对象中:
· 面向对象的方法:
$row = $result->fetch_object();
· 面向过程的方法:
$row = mysqli_fetch_object($result);
之后通过$row->keyname访问每个属性即可。
以上是针对数据库查询,如果是执行数据库修改时,应该使用mysqli_affected_rows()来得到受影响的数据库条目总数:
· 面向对象的方法:
$num = $db->affected_rows;
· 面向过程的方法:
$num = mysqli_affected_rows($db);
· 面向对象的方法:
$result->free();
· 面向过程的方法:
mysqli_free_result($result);
这样即可释放结果集。
之后断开数据库连接:
· 面向对象的方法:
$db->close();
· 面向过程的方法:
mysqli_close($db);
按字母顺序浏览:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
→我们致力于为广大网民解决所遇到的各种电脑技术问题 如果您认为本词条还有待完善,请 编辑词条