一、mysqli_query返回值
mysqli_query()函數是PHP提供的一種連接MySQL資料庫並執行SQL語句的方法。當執行成功時,返回值為一個結果集,可以通過fetch_object()、fetch_array()、fetch_assoc()等方法獲取其中的數據。
<?php
//連接資料庫
$conn = mysqli_connect("localhost", "username", "password", "database");
//執行查詢語句
$result = mysqli_query($conn, "SELECT * FROM users");
//遍歷結果集
while($row = mysqli_fetch_assoc($result)) {
//處理數據
}
//關閉連接
mysqli_close($conn);
?>
當執行失敗時,mysqli_query()會返回false,可以通過mysqli_error()函數獲取具體的錯誤信息。
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
//SQL語法錯誤
$result = mysqli_query($conn, "SELECT name, age FROM users WHERE");
if(!$result) {
echo mysqli_error($conn);
}
mysqli_close($conn);
?>
二、mysql query函數
mysqli_query()是mysqli擴展中的一個方法,與之相對應的是mysql_query()函數,是PHP舊版本中的一種連接MySQL資料庫並執行SQL語句的方法。
與mysqli_query()不同的是,mysql_query()函數只能夠連接MySQL 4.1.x及以下版本的資料庫,並且執行失敗時會直接輸出錯誤信息,而不是返回false。
<?php
$conn = mysql_connect("localhost", "username", "password");
mysql_select_db("database", $conn);
$result = mysql_query("SELECT * FROM users");
while($row = mysql_fetch_assoc($result)) {
//處理數據
}
mysql_close($conn);
?>
三、php mysql query
mysqli_query()函數不僅可以連接MySQL資料庫並執行SQL語句,還可以執行一些針對資料庫的操作,如獲取資料庫的版本號、獲取最近一次插入的自增ID等。
要獲取資料庫的版本號,可以使用以下代碼:
<?php
$conn = mysqli_connect("localhost", "username", "password");
echo mysqli_get_server_info($conn);
mysqli_close($conn);
?>
要獲取最近一次插入的自增ID,可以使用mysqli_insert_id()函數,該函數必須在執行插入操作之後立即調用,否則會返回0。
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
mysqli_query($conn, "INSERT INTO users(name, age) VALUES('Tom', 18)");
echo mysqli_insert_id($conn);
mysqli_close($conn);
?>
四、mysqli查詢
mysqli_query()函數還可以執行其他類型的SQL語句,如更新、插入和刪除。要執行更新語句,可以使用以下代碼:
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
mysqli_query($conn, "UPDATE users SET age = 20 WHERE name = 'Tom'");
mysqli_close($conn);
?>
要執行插入和刪除語句,可以使用以下代碼:
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
mysqli_query($conn, "INSERT INTO users(name, age) VALUES('Tom', 18)");
mysqli_query($conn, "DELETE FROM users WHERE name = 'Tom'");
mysqli_close($conn);
?>
五、query函數用法
mysqli_query()函數還可以與其他函數結合使用,如mysqli_num_rows()函數可以獲取結果集中的行數。
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
$result = mysqli_query($conn, "SELECT * FROM users");
echo mysqli_num_rows($result);
mysqli_close($conn);
?>
mysqli_affected_rows()函數可以獲取插入、更新和刪除操作影響的行數。
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
mysqli_query($conn, "UPDATE users SET age = 20 WHERE name = 'Tom'");
echo mysqli_affected_rows($conn);
mysqli_close($conn);
?>
mysqli_field_count()函數可以獲取結果集中的列數。
<?php
$conn = mysqli_connect("localhost", "username", "password", "database");
$result = mysqli_query($conn, "SELECT * FROM users");
echo mysqli_field_count($conn);
mysqli_close($conn);
?>
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/187175.html
微信掃一掃
支付寶掃一掃