| |初探|欄位型態|運算元與函數|存取 MySQL|進階| | |
|---|---|
| MySQL 簡介 |
|
|
PHP 的 MySQL Functions | |
| 在 PHP 裡頭有一組函數,專門被用來存取 MySQL database server;只要您在編譯 PHP 時加入對 MySQL 的支持,就能夠使用它。由於其中包括 50 個左右的函數,限於篇幅,在此僅就較常用的部份加以說明,其餘的函數請自行參閱相關書籍或線上文件。 | |
|
| |
| 以下幾個函數可以用來建立 PHP 與 MySQL 之間的連線,並將 SQL 敘述遞交給 MySQL 執行。 | |
|
mysql_connect 與 mysql_pconnect | |
| 語法:resource mysql_connect ( [string SERVER [, string USERNAME [, string PASSWORD [, bool NEW_LINK [, int CLIENT_FLAGS]]]]]) | |
說明:
| |
| 用法:$link = mysql_connect("localhost", "chensh", "123456"); | |
|
mysql_select_db | |
| 語法:bool mysql_select_db ( string DATABASE_NAME [, resource LINK_IDENTIFIER]) | |
說明:
| |
| 用法:mysql_select_db("MyDB", $link); | |
|
mysql_query | |
| 語法:resource mysql_query ( string QUERY [, resource LINK_IDENTIFIER [, int RESULT_MODE]]) | |
說明:
| |
| 用法:$result = mysql_query("SELECT * WHERE friend", $link); | |
|
mysql_db_query | |
| 語法:resource mysql_db_query ( string DATABASE, string QUERY [, resource LINK_IDENTIFIER]) | |
| 說明:本函數的使用方法與執行結果與 mysql_query( ) 相似,只是多了一個 DATABASE 參數,用來指定欲存取的資料庫。您可以將本函數視為 mysql_select_db( ) 與 mysql_query( ) 的組合。 | |
| 用法:$result = mysql_db_query("MyDB", "SELECT * WHERE friend", $link); | |
|
| |
| 當所執行的是 SELECT、SHOW、EXPLAIN 或 DESCRIBE 敘述時,將傳回一個 resource identifier,您可以使用下列的函數來處理它。 | |
|
mysql_num_rows | |
| 語法:int mysql_num_rows ( resource RESULT) | |
| 說明:用來計算 RESULT 裡頭有多少個資料列。 | |
| 用法:$num_rows = mysql_num_rows($result); | |
|
mysql_fetch_row | |
| 語法:array mysql_fetch_row ( resource RESULT) | |
| 說明:搭配迴圈的使用,本函數可以從 RESULT 裡,將資料一列一列讀取出來。 | |
|
用法一: $num_rows = mysql_num_rows($result); for ( $i=0; $i<$num_rows; $i++ ) { list($value1, $value2) = mysql_fetch_row($result); echo $value1; echo $value2; echo ...... } | |
|
用法二: while ( list($value1, $value2) = mysql_fetch_row($result) ) { echo $value1; echo $value2; echo ...... } | |
|
用法三: while ( $value = mysql_fetch_row($result) ) { echo $value[0]; echo $value[1]; echo ...... } | |
|
mysql_data_seek | |
| 語法:bool mysql_data_seek ( resource RESULT_IDENTIFIER, int ROW_NUMBER) | |
| 說明:將 RESULT_IDENTIFIER 的內部指標移到第 ROW_NUMBER 個 row 去。 | |
| 用法:mysql_data_seek($result, 6); | |
|
mysql_insert_id | |
| 語法:int mysql_insert_id ( [resource LINK_IDENTIFIER]) | |
| 說明:假如您將某個欄位的型態設為「AUTO_INCREMENT」的話,使用本函數將可以得知在 INSERT 敘述被執行時,MySQL 自動為該欄位產生的值為何。 | |
| 用法:$ID = mysql_insert_id($link); | |
|
mysql_free_result | |
| 語法:bool mysql_free_result ( resource RESULT) | |
| 說明:釋放 RESULT 所佔用的記憶體。 | |
| 用法:mysql_free_result($result); | |
|
| |
| 若您所執行的是 INSERT、UPDATE 或 DELETE 敘述時,下列函數是可以拿來搭配使用的。 | |
|
mysql_affected_rows | |
| 語法:int mysql_affected_rows ( [resource LINK_IDENTIFIER]) | |
說明:
| |
| 用法:$num_rows = mysql_affected_rows($link); | |
|
| |
| 下列函數在一些特殊情況下可能會派上用場。 | |
|
mysql_close | |
| 語法:bool mysql_close ( [resource LINK_IDENTIFIER]) | |
說明:
| |
| 用法:mysql_close($link); | |
|
mysql_error | |
| 語法:string mysql_error ( [resource LINK_IDENTIFIER]) | |
| 說明:本函數用來取得 MySQL 在執行 SQL 敘述時的錯誤訊息。當您在為程式除錯時,可能會用得上它。 | |
| 用法:$Error = mysql_error($link); | |
|
| |
| |初探|欄位型態|運算元與函數|存取 MySQL|進階| | |

