PHP數(shù)據(jù)庫擴(kuò)展之原生MySQL API
在寫新的代碼時(shí),不推薦使用本擴(kuò)展。您應(yīng)該使用?mysqli?或者?PDO_MySQL?擴(kuò)展代替。
安裝編譯時(shí),只要使用?--with-mysql[=DIR]?配置選項(xiàng)即可,其中可選的?[DIR]?指向 MySQL 的安裝目錄。
雖然本 MySQL 擴(kuò)展庫兼容 MySQL 4.1.0 及其以后版本,但是它不支持這些版本提供的額外功能。要使用這些功能,請使用?MySQLi?擴(kuò)展庫。
如果要同時(shí)安裝 mysql 擴(kuò)展庫和 mysqli 擴(kuò)展庫,必須使用同一個(gè)客戶端庫以避免任何沖突。
范例這個(gè)簡單的范例展示了如何連接、執(zhí)行一個(gè)查詢,打印結(jié)果集后斷開 MySQL 數(shù)據(jù)庫的連接。
Example #1 MySQL 擴(kuò)展概述范例
<?php // 連接、選擇數(shù)據(jù)庫 $link = mysql_connect(’mysql_host’, ’mysql_user’, ’mysql_password’)or die(’Could not connect: ’ . mysql_error()); echo ’Connected successfully’; mysql_select_db(’my_database’) or die(’Could not select database’); // 執(zhí)行 SQL 查詢 $query = ’SELECT * FROM my_table’; $result = mysql_query($query) or die(’Query failed: ’ . mysql_error()); // 以 HTML 打印查詢結(jié)果 echo '<table>n'; while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {echo 't<tr>n';foreach ($line as $col_value) { echo 'tt<td>$col_value</td>n';}echo 't</tr>n'; } echo '</table>n'; // 釋放結(jié)果集 mysql_free_result($result); // 關(guān)閉連接 mysql_close($link);?>MySQL 函數(shù)
大多數(shù) MySQL 函數(shù)的最后一個(gè)可選參數(shù)是?link_identifier。 如果沒有提供這個(gè)參數(shù),則會(huì)使用最后一個(gè)打開的連接。 若不存在這個(gè)最后打開的連接,則會(huì)嘗試用?php.ini?里定義的默認(rèn)參數(shù)來連接。 如果沒有成功連接,函數(shù)會(huì)返回?FALSE。
mysql_affected_rows?— 取得前一次 MySQL 操作所影響的記錄行數(shù)mysql_client_encoding?— 返回字符集的名稱mysql_close?— 關(guān)閉 MySQL 連接mysql_connect?— 打開一個(gè)到 MySQL 服務(wù)器的連接mysql_create_db?— 新建一個(gè) MySQL 數(shù)據(jù)庫mysql_data_seek?— 移動(dòng)內(nèi)部結(jié)果的指針mysql_db_name?— 取得結(jié)果數(shù)據(jù)mysql_db_query?— 發(fā)送一條 MySQL 查詢mysql_drop_db?— 丟棄(刪除)一個(gè) MySQL 數(shù)據(jù)庫mysql_errno?— 返回上一個(gè) MySQL 操作中的錯(cuò)誤信息的數(shù)字編碼mysql_error?— 返回上一個(gè) MySQL 操作產(chǎn)生的文本錯(cuò)誤信息mysql_escape_string?— 轉(zhuǎn)義一個(gè)字符串用于 mysql_querymysql_fetch_array?— 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,或二者兼有mysql_fetch_assoc?— 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組mysql_fetch_field?— 從結(jié)果集中取得列信息并作為對象返回mysql_fetch_lengths?— 取得結(jié)果集中每個(gè)輸出的長度mysql_fetch_object?— 從結(jié)果集中取得一行作為對象mysql_fetch_row?— 從結(jié)果集中取得一行作為枚舉數(shù)組mysql_field_flags?— 從結(jié)果中取得和指定字段關(guān)聯(lián)的標(biāo)志mysql_field_len?— 返回指定字段的長度mysql_field_name?— 取得結(jié)果中指定字段的字段名mysql_field_seek?— 將結(jié)果集中的指針設(shè)定為制定的字段偏移量mysql_field_table?— 取得指定字段所在的表名mysql_field_type?— 取得結(jié)果集中指定字段的類型mysql_free_result?— 釋放結(jié)果內(nèi)存mysql_get_client_info?— 取得 MySQL 客戶端信息mysql_get_host_info?— 取得 MySQL 主機(jī)信息mysql_get_proto_info?— 取得 MySQL 協(xié)議信息mysql_get_server_info?— 取得 MySQL 服務(wù)器信息mysql_info?— 取得最近一條查詢的信息mysql_insert_id?— 取得上一步 INSERT 操作產(chǎn)生的 IDmysql_list_dbs?— 列出 MySQL 服務(wù)器中所有的數(shù)據(jù)庫mysql_list_fields?— 列出 MySQL 結(jié)果中的字段mysql_list_processes?— 列出 MySQL 進(jìn)程mysql_list_tables?— 列出 MySQL 數(shù)據(jù)庫中的表mysql_num_fields?— 取得結(jié)果集中字段的數(shù)目mysql_num_rows?— 取得結(jié)果集中行的數(shù)目mysql_pconnect?— 打開一個(gè)到 MySQL 服務(wù)器的持久連接mysql_ping?— Ping 一個(gè)服務(wù)器連接,如果沒有連接則重新連接mysql_query?— 發(fā)送一條 MySQL 查詢mysql_real_escape_string?— 轉(zhuǎn)義 SQL 語句中使用的字符串中的特殊字符,并考慮到連接的當(dāng)前字符集mysql_result?— 取得結(jié)果數(shù)據(jù)mysql_select_db?— 選擇 MySQL 數(shù)據(jù)庫mysql_set_charset?— 設(shè)置客戶端的字符集mysql_stat?— 取得當(dāng)前系統(tǒng)狀態(tài)mysql_tablename?— 取得表名mysql_thread_id?— 返回當(dāng)前線程的 IDmysql_unbuffered_query?— 向 MySQL 發(fā)送一條 SQL 查詢,并不獲取和緩存結(jié)果的行相關(guān)文章:
1. 解決AJAX返回狀態(tài)200沒有調(diào)用success的問題2. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)3. 如何在jsp界面中插入圖片4. 爬取今日頭條Ajax請求5. jsp EL表達(dá)式詳解6. Ajax實(shí)現(xiàn)表格中信息不刷新頁面進(jìn)行更新數(shù)據(jù)7. jsp中sitemesh修改tagRule技術(shù)分享8. asp(vbscript)中自定義函數(shù)的默認(rèn)參數(shù)實(shí)現(xiàn)代碼9. ASP基礎(chǔ)知識VBScript基本元素講解10. JSP servlet實(shí)現(xiàn)文件上傳下載和刪除
