PHP MySQL 函數(shù)-7.13PHP 參考手冊
閱讀 ?·? 發(fā)布日期 2019-06-29 08:49 ?·? adminPHP MySQL 簡介
MySQL 函數(shù)允許您訪問 MySQL 數(shù)據(jù)庫服務(wù)器。
安裝
為了能夠順利的使用本類函數(shù),必須在編譯 PHP 時添加對 MySQL 的支持。
編譯時,只要使用 --with-mysql[=DIR] 配置選項即可,其中可選的 [DIR] 指向 MySQL 的安裝目錄。
雖然本 MySQL 擴展庫兼容 MySQL 4.1.0 及其以后版本,但是它不支持這些版本提供的額外功能。要使用這些功能,請使用 MySQLi 擴展庫。
如果要同時安裝 mysql 擴展庫和 mysqli 擴展庫,必須使用同一個客戶端庫以避免任何沖突。
在 Linux 系統(tǒng)上安裝
PHP 4
默認(rèn)開啟了 --with-mysql 選項。此默認(rèn)行為可以用 --without-mysql 配置選項來禁止。如果啟用 MySQL 而不指定安裝目錄的話,PHP 將使用綁定的 MySQL 客戶端連接庫。
還有其它應(yīng)用程序使用 MySQL(例如 auth-mysql)的用戶不要用綁定的庫,而要指定 MySQL 的安裝目錄,如這樣:--with-mysql=/path/to/mysql。這將強制 PHP 使用隨 MySQL 安裝的客戶端連接庫,就可以避免任何沖突。
PHP 5+
MySQL 默認(rèn)未啟用,也沒有綁定的 MySQL 庫。使用 --with-mysql[=DIR] 配置選項來加入 MySQL 的支持。可以從 MySQL 下載頭文件和庫。
在 Windows 系統(tǒng)上安裝
PHP 4
PHP MySQL 擴展已經(jīng)編譯入 PHP。
PHP 5+
MySQL 默認(rèn)未啟用,因此必須在 php.ini 中激活 php_mysql.dll 動態(tài)連接庫。此外,PHP 還需要訪問 MySQL 客戶端連接庫。PHP 的 Windows 發(fā)行版包括了一個 libmysql.dll,為了讓 PHP 能和 MySQL 對話,此文件必須放在 Windows 的系統(tǒng)路徑 PATH 中。
要激活任何 PHP 擴展庫(例如 php_mysql.dll),PHP 指令 extension_dir 要被設(shè)為 PHP 擴展庫所在的目錄。PHP 5 下 extension_dir 取值的一個例子是 c:\php\ext。
注釋:如果啟動 web 服務(wù)器時出現(xiàn)類似如下的錯誤:"Unable to load dynamic library './php_mysql.dll'",這是因為系統(tǒng)找不到 php_mysql.dll 和 / 或 libmysql.dll。
Runtime 配置
MySQL 函數(shù)的行為受到 php.ini 中設(shè)置的影響。
MySQL 配置選項:
名稱 | 默認(rèn) | 描述 | 可更改 |
---|---|---|---|
mysql.allow_persistent | "1" | 是否允許 MySQL 的持久連接。 | PHP_INI_SYSTEM |
mysql.max_persistent | "-1" | 每個進程中最大的持久連接數(shù)目。 | PHP_INI_SYSTEM |
mysql.max_links | "-1" | 每個進程中最大的連接數(shù),包括持久連接。 | PHP_INI_SYSTEM |
mysql.trace_mode | "0" | 跟蹤模式。從 PHP 4.3.0 起可用。 | PHP_INI_ALL |
mysql.default_port | NULL | 指定默認(rèn)連接數(shù)據(jù)庫的 TCP 端口號。 | PHP_INI_ALL |
mysql.default_socket | NULL | 默認(rèn)的 socket 名稱。PHP 4.0.1起可用。 | PHP_INI_ALL |
mysql.default_host | NULL | 默認(rèn)的服務(wù)器地址。不適用于SQL安全模式。 | PHP_INI_ALL |
mysql.default_user | NULL | 默認(rèn)使用的用戶名。不適用于SQL安全模式。 | PHP_INI_ALL |
mysql.default_password | NULL | 默認(rèn)使用的密碼。不適用于SQL安全模式。 | PHP_INI_ALL |
mysql.connect_timeout | "60" | 連接超時秒數(shù)。 | PHP_INI_ALL |
資源類型
在 MySQL 模塊中使用了兩種資源類型。第一種是數(shù)據(jù)庫的連接句柄,第二種是 SQL 查詢返回的結(jié)果集。
PHP MySQL 函數(shù)
PHP:指示支持該函數(shù)的最早的 PHP 版本。
函數(shù) | 描述 | PHP |
---|---|---|
mysql_affected_rows() | 取得前一次 MySQL 操作所影響的記錄行數(shù)。 | 3 |
mysql_change_user() | 不贊成。改變活動連接中登錄的用戶 | 3 |
mysql_client_encoding() | 返回當(dāng)前連接的字符集的名稱 | 4 |
mysql_close() | 關(guān)閉非持久的 MySQL 連接。 | 3 |
mysql_connect() | 打開非持久的 MySQL 連接。 | 3 |
mysql_create_db() | 不贊成。新建 MySQL 數(shù)據(jù)庫。使用 mysql_query() 代替。 | 3 |
mysql_data_seek() | 移動記錄指針。 | 3 |
mysql_db_name() | 從對 mysql_list_dbs() 的調(diào)用返回數(shù)據(jù)庫名稱。 | 3 |
mysql_db_query() |
不贊成。發(fā)送一條 MySQL 查詢。 使用 mysql_select_db() 和 mysql_query() 代替。 |
3 |
mysql_drop_db() |
不贊成。丟棄(刪除)一個 MySQL 數(shù)據(jù)庫。 使用 mysql_query() 代替。 |
3 |
mysql_errno() | 返回上一個 MySQL 操作中的錯誤信息的數(shù)字編碼。 | 3 |
mysql_error() | 返回上一個 MySQL 操作產(chǎn)生的文本錯誤信息。 | 3 |
mysql_escape_string() |
不贊成。轉(zhuǎn)義一個字符串用于 mysql_query。 使用 mysql_real_escape_string() 代替。 |
4 |
mysql_fetch_array() | 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,或二者兼有。 | 3 |
mysql_fetch_assoc() | 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組。 | 4 |
mysql_fetch_field() | 從結(jié)果集中取得列信息并作為對象返回。 | 3 |
mysql_fetch_lengths() | 取得結(jié)果集中每個字段的內(nèi)容的長度。 | 3 |
mysql_fetch_object() | 從結(jié)果集中取得一行作為對象。 | 3 |
mysql_fetch_row() | 從結(jié)果集中取得一行作為數(shù)字?jǐn)?shù)組。 | 3 |
mysql_field_flags() | 從結(jié)果中取得和指定字段關(guān)聯(lián)的標(biāo)志。 | 3 |
mysql_field_len() | 返回指定字段的長度。 | 3 |
mysql_field_name() | 取得結(jié)果中指定字段的字段名。 | 3 |
mysql_field_seek() | 將結(jié)果集中的指針設(shè)定為指定的字段偏移量。 | 3 |
mysql_field_table() | 取得指定字段所在的表名。 | 3 |
mysql_field_type() | 取得結(jié)果集中指定字段的類型。 | 3 |
mysql_free_result() | 釋放結(jié)果內(nèi)存。 | 3 |
mysql_get_client_info() | 取得 MySQL 客戶端信息。 | 4 |
mysql_get_host_info() | 取得 MySQL 主機信息。 | 4 |
mysql_get_proto_info() | 取得 MySQL 協(xié)議信息。 | 4 |
mysql_get_server_info() | 取得 MySQL 服務(wù)器信息。 | 4 |
mysql_info() | 取得最近一條查詢的信息。 | 4 |
mysql_insert_id() | 取得上一步 INSERT 操作產(chǎn)生的 ID。 | 3 |
mysql_list_dbs() | 列出 MySQL 服務(wù)器中所有的數(shù)據(jù)庫。 | 3 |
mysql_list_fields() |
不贊成。列出 MySQL 結(jié)果中的字段。 使用 mysql_query() 代替。 |
3 |
mysql_list_processes() | 列出 MySQL 進程。 | 4 |
mysql_list_tables() |
不贊成。列出 MySQL 數(shù)據(jù)庫中的表。 使用Use mysql_query() 代替。 |
3 |
mysql_num_fields() | 取得結(jié)果集中字段的數(shù)目。 | 3 |
mysql_num_rows() | 取得結(jié)果集中行的數(shù)目。 | 3 |
mysql_pconnect() | 打開一個到 MySQL 服務(wù)器的持久連接。 | 3 |
mysql_ping() | Ping 一個服務(wù)器連接,如果沒有連接則重新連接。 | 4 |
mysql_query() | 發(fā)送一條 MySQL 查詢。 | 3 |
mysql_real_escape_string() | 轉(zhuǎn)義 SQL 語句中使用的字符串中的特殊字符。 | 4 |
mysql_result() | 取得結(jié)果數(shù)據(jù)。 | 3 |
mysql_select_db() | 選擇 MySQL 數(shù)據(jù)庫。 | 3 |
mysql_stat() | 取得當(dāng)前系統(tǒng)狀態(tài)。 | 4 |
mysql_tablename() | 不贊成。取得表名。使用 mysql_query() 代替。 | 3 |
mysql_thread_id() | 返回當(dāng)前線程的 ID。 | 4 |
mysql_unbuffered_query() | 向 MySQL 發(fā)送一條 SQL 查詢(不獲取 / 緩存結(jié)果)。 | 4 |
PHP MySQL 常量
在 PHP 4.3.0 以后的版本中,允許在 mysql_connect() 函數(shù)和 mysql_pconnect() 函數(shù)中指定更多的客戶端標(biāo)記:
PHP:指示支持該常量的最早的 PHP 版本。
常量 | 描述 | PHP |
---|---|---|
MYSQL_CLIENT_COMPRESS | 使用壓縮的通訊協(xié)議。 | 4.3 |
MYSQL_CLIENT_IGNORE_SPACE | 允許在函數(shù)名后留空格位。 | 4.3 |
MYSQL_CLIENT_INTERACTIVE | 在關(guān)閉連接前所允許的交互超時非活動時間。 | 4.3 |
MYSQL_CLIENT_SSL | 使用 SSL 加密(僅在 MySQL 客戶端庫版本為 4+ 時可用)。 | 4.3 |
mysql_fetch_array() 函數(shù)使用一個常量來表示所返回數(shù)組的類型:
常量 | 描述 | PHP |
---|---|---|
MYSQL_ASSOC | 返回的數(shù)據(jù)列使用字段名作為數(shù)組的索引名。 | |
MYSQL_BOTH | 返回的數(shù)據(jù)列使用字段名及數(shù)字索引作為數(shù)組的索引名。 | |
MYSQL_NUM |
返回的數(shù)據(jù)列使用數(shù)字索引作為數(shù)組的索引名。 索引從 0 開始,表示返回結(jié)果的第一個字段。 |
為您推薦
- 襯塑管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 保溫管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 玻璃管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 鍍鋅方矩管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與 2020-01-12
- PVC管材網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12