一、操作數據庫的步驟
我們對數據庫的操作主要分為五步:
連接數據庫、選擇數據庫、設置編碼方式、操作數據庫、關閉數據庫。
二、連接數據庫
連接數據庫的方法是調用mysql_connect()函數,它需要我們提供三個參數,服務器的主機名,用戶名和密碼。如果服務器和php運行在同一臺計算機上,可以使用localhost作為主機名。
// 1、連接數據庫 服務器主機名,用戶名,密碼
$db = mysql_connect("localhost","root","");
三、選擇數據庫
與數據庫進行連接之后,就可以使用各種mysql_xxx()函數對數據庫進行操作,但是為了每次調用mysql_xxx()函數都要指定目標數據庫,一般我們會先用mysql_select_db()函數選定一個默認數據庫,其參數為數據庫名稱。
//選擇數據庫
mysql_select_db("mydataDB")
四、設置編碼方式
由于我們的程序中有時會需要顯示漢字,為了防止漢字亂碼,我們就要先設置編碼方式為SET NAMES UTF8,并用mysql_query()函數來執行者個指令。
// 設置編碼方式
mysql_query("SET NAMES UTF8");
- mysql_query() 函數可以用來執行任何一種SQL命令,比如SELECT(查詢)、INSERT(插入新紀錄)、UPDATE(修改現有記錄)、DELETE(刪除現有記錄)、CREATE TABLE(創建新數據表)、ALTER TABLE(修改數據表結構)等。
五、操作數據
1、查詢數據表,使后面的所有操作都針對當前數據表執行。
// 創建sql語句,并檢測是否正確
$sql = "SELECT * FROM users";
$res = mysql_query($sql);
2、mysql_fetch_row()函數將以普通數組的形式返回數據庫中的一條數據,它的各個字段需要以$row[n]的方式進行訪問。
$row = mysql_fetch_row($res); // 返回普通數組
var_dump($row);
代碼執行效果
var_dump()方法是判斷一個變量的類型與長度,并輸出變量的數值,如果變量有值輸的是變量的值并回返數據類型.
$row = mysql_fetch_row($res);
var_dump($row);
echo "<hr/>";
print_r($row);
>```

// 遍歷獲取username的值
while ($row = mysql_fetch_row($res)) {
echo $row["1"]."<hr/>";
};

3、mysql_fetch_array()函數將以關聯數組的形式返回數據庫中的一條數據,它的各個字段需要以$row[n]或$row["colname"]的方式進行訪問。
$row = mysql_fetch_array($res);
print_r($row);
echo "<hr/>";
echo $row[1];
//echo $row["username"];

4、mysql_fetch_accoc()函數也以關聯數組的形式返回數據庫中的一條數據,它的各個字段只能以$row["colname"]的方式進行訪問。
$row = mysql_fetch_assoc($res);
print_r($row);
echo "
";
echo $row["username"];

5、mysql_fetch_object()函數以一個對象的方式返回數據庫中的一條數據,它的各個字段需要以$row->colname的方式進行訪問。
$row = mysql_fetch_object($res);
var_dump($row);
echo "<hr/>";
echo $row->username; //取出對象的屬性

6、mysql_num_rows()函數用于獲取查詢返回的記錄數。
// 獲取查詢記錄的數量
$count = mysql_num_rows($res);
echo "<h1>$count</h1>";

7、mysql_insert_id() 函數用于獲取INSERT(插入)操作產生的ID。
8、mysql_affected_rows()函數用于獲取前一次對數據庫操作所影響的記錄數。
// 獲取由于insert而產生的id
$id = mysql_insert_id($db);
echo $id;
echo "<hr/>";
// 獲取影響的行數
$rows = mysql_affected_rows($db);
echo $rows;

9、mysql_free_result()函數釋放查詢結果。
// 釋放查詢結果
mysql_free_result($res);
#五、關閉數據庫
調用mysql_close()函數可關閉數據庫,參數為我們指定的數據庫,如果不寫參數,則默認為最近打開的數據庫。
// 打開數據庫
$db = mysql_connect("localhost","root","");
// 關閉數據庫
mysql_close($db);
***
以上內容純屬個人理解,由于本人水平有限,若有錯漏之處敬請之處改正,謝謝!