目錄
php的mysql\mysqli\PDO(一)mysql,mysqlipdo
首頁 php教程 php手册 php的mysqlmysqliPDO(一)mysql,mysqlipdo

php的mysqlmysqliPDO(一)mysql,mysqlipdo

Jun 13, 2016 am 08:43 AM
mysqli

php的mysql\mysqli\PDO(一)mysql,mysqlipdo

原文链接:http://www.orlion.ga/1140/

工作中数据库的操作都被封装好了,这些怎么用的都快忘了干脆写篇博客重新复习下,以后要是再忘记了可以看这篇文章。

 

    PHP 5.5.0 起已废弃

    1、mysql_connect()

resource mysql_connect([ string $server [, string $username [, string $password [, bool$new_link [, int $client_flags ]]]]] )
登入後複製

$server:服务器地址可以包括端口号,如果 PHP 指令 mysql.default_host 未定义(默认情况),则默认值是 'localhost:3306'。 在 SQL 安全模式 时,参数被忽略,总是使用 'localhost:3306'。

$username:用户名。默认值由 mysql.default_user 定义。 在 SQL 安全模式 时,参数被忽略,总是使用服务器进程所有者的用户名。

$password:密码。默认值由mysql.default_password定义。在 SQL 安全模式 时,参数被忽略,总是使用空密码。

$new_link:如果用同样的参数第二次调用 mysql_connect(),将不会建立新连接,而将返回已经打开的连接标识。参数new_link 改变此行为并使 mysql_connect() 总是打开新的连接,甚至当 mysql_connect() 曾在前面被用同样的参数调用过。

$client_flags:使用以下常量:

MySQL 客户端常量
常量说明
MYSQL_CLIENT_COMPRESS 使用压缩的通讯协议
MYSQL_CLIENT_IGNORE_SPACE 允许在函数名后留空格位
MYSQL_CLIENT_INTERACTIVE 允许设置断开连接之前所空闲等候的 interactive_timeout 时间(代替 wait_timeout)。
MYSQL_CLIENT_SSL 使用 SSL 加密。本标志仅在 MySQL 客户端库版本为 4.x 或更高版本时可用。在 PHP 4 和 Windows 版的 PHP 5 安装包中绑定的都是 3.23.x。


2、mysql_close()

bool mysql_close ([ resource $link_identifier = NULL ] )
登入後複製

mysql_close() 关闭指定的连接标识所关联的到 MySQL 服务器的非持久连接。如果没有指定 link_identifier,则关闭上一个打开的连接.通常不需要使用 mysql_close(),因为已打开的非持久连接会在脚本执行完毕后自动关闭。PHP 4 Zend 引擎引进了引用计数系统,可以自动检测到一个资源不再被引用了(和 Java 一样)。这种情况下此资源使用的所有外部资源都会被垃圾回收系统释放。因此,很少需要手工释放内存。

3、mysql_select_db()

bool mysql_select_db ( string $database_name [, resource $ link_identifier ] )
登入後複製

如果没有指定$link_identifier则使用上一个打开的数据库连接,如果没有打开的连接则将无参数调用mysql_connet()取得一个连接并使用。如果没有连接则E_WARNING错误

4、mysql_query()

resource mysql_query ( string $query [, resource $link_identifier = NULL ] )
登入後複製

$query查询字符串不应该以分号结束

$link_identifier如果不指定处理方式与mysql_select_db()相同。

返回值:

mysql_query() 仅对 SELECT,SHOW,DESCRIBE, EXPLAIN 和其他语句 语句返回一个 resource,如果查询出现错误则返回 FALSE。对于其它类型的 SQL 语句,比如INSERT, UPDATE, DELETE, DROP 之类, mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。返回的结果资源应该传递给 mysql_fetch_array() 和其他函数来处理结果表,取出返回的数据。假定查询成功,可以调用 mysql_num_rows() 来查看对应于 SELECT 语句返回了多少行,或者调用mysql_affected_rows() 来查看对应于 DELETE,INSERT,REPLACE 或 UPDATE 语句影响到了多少行。如果没有权限访问查询语句中引用的表时,mysql_query() 也会返回 FALSE

对于包含二进制数据的查询,你必须使用mysql_real_query()而不是mysql_query(),因为二进制代码数据可能包含“\0”字符,而且,mysql_real_query()比mysql_query()更快,因为它不会在查询字符串上调用strlen()。如果查询成功,函数返回零。如果发生一个错误,函数返回非零

5、mysql_affected_rows()

int mysql_affected_rows ([ resource $link_identifier = NULL ] )
登入後複製

取得最近一次与 link_identifier 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数。

6、mysql_fetch_array()

array mysql_fetch_array ( resource $result [, int $ result_type ] )
登入後複製

将结果以数组方式返回,一次只返回一行,然后指向下一行(用while循环取出)如果没有更多结果返回false。如果结果中有两个或两个以上的列有相同的字段名,最后一列将优先。如果sql中指定了别名则使用别名。PHP手册中指出mysql_fetch_array并不明显比mysql_fetch_row慢。

$result_type:可选:MYSQL_ASSOC(关联数组),MYSQL_NUM(枚举数组) 和 MYSQL_BOTH,默认值MYSQL_BOTH。

    // MYSQL_NUM
    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
        printf ("ID: %s  Name: %s", $row[0], $row[1]);
    }
    // MYSQL_ASSOC
    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
        printf ("ID: %s  Name: %s", $row["id"], $row["name"]);
    }
    // MYSQL_BOTH
    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
        printf ("ID: %s  Name: %s", $row[0], $row["name"]);
    }
登入後複製

7、其他函数:

string mysql_error ([ resource $link_identifier ] )
登入後複製

如果没有指定数据库连接则使用上一个连接,只返回最近一次mysql函数的错误文本。

bool mysql_set_charset ( string $charset [, resource $link_identifier = NULL ] )
登入後複製

设置字符集,数据库连接的选择与mysql_select_db()一样。

string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier ] )
登入後複製

    转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集(这是与mysql_escape_string()的不同)

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP Fatal error: Call to undefined function mysqli_connect()的解決方法 PHP Fatal error: Call to undefined function mysqli_connect()的解決方法 Jun 23, 2023 am 09:40 AM

在使用PHP編寫Web應用程式時,經常會使用MySQL資料庫來儲存資料。 PHP提供了一種與MySQL資料庫互動的方法,稱為MySQLi。然而,有時在使用MySQLi時,會遇到一個錯誤訊息,如下所示:PHPFatalerror:Calltoundefinedfunctionmysqli_connect()這個錯誤訊息意味著PHP無法找到my

PHP PDO 與 mysqli:比較和對比 PHP PDO 與 mysqli:比較和對比 Feb 19, 2024 pm 12:24 PM

PDOPDO是一個物件導向的資料庫存取抽象層,它為PHP提供了一個統一的接口,允許您使用相同的程式碼與不同的資料庫(如Mysql、postgresql、oracle)進行互動。 PDO隱藏了底層資料庫連線的複雜性,簡化了資料庫操作。優缺點優點:統一接口,支援多種資料庫簡化資料庫操作,降低開發難度提供預處理語句,提高安全性支援事務處理缺點:效能可能比原生擴充稍低依賴外部函式庫,可能會增加開銷演示程式碼使用PDO連線mysql資料庫:$db=newPDO("mysql:host=localhost;dbnam

php無法連接mysqli怎麼辦 php無法連接mysqli怎麼辦 Nov 09, 2022 am 10:07 AM

php無法連接mysqli的解決方法:1.開啟「php.ini」檔案;2、找到「mysqli.reconnect」;3、將「mysqli.reconnect = OFF」改成「mysqli.reconnect = on」即可。

在PHP中使用MySQLi建立資料庫連線的詳盡教學 在PHP中使用MySQLi建立資料庫連線的詳盡教學 Jun 04, 2024 pm 01:42 PM

如何在PHP中使用MySQLi建立資料庫連線:包含MySQLi擴充(require_once)建立連線函數(functionconnect_to_db)呼叫連線函數($conn=connect_to_db())執行查詢($result=$conn->query())關閉連線( $conn->close())

PHP Warning: mysqli_connect(): (HY000/2002): Connection refused的解決方法 PHP Warning: mysqli_connect(): (HY000/2002): Connection refused的解決方法 Jun 23, 2023 am 08:54 AM

如果你使用PHP連接MySQL資料庫時遇到了以下錯誤提示:PHPWarning:mysqli_connect():(HY000/2002):Connectionrefused那麼你可以嘗試按照下面的步驟來解決這個問題。確認MySQL服務是否正常運作首先應該檢查MySQL服務是否正常執行,如果服務未運行或啟動失敗,就可能會導致連線被拒絕的錯誤。你可

mysql的運行檔是什麼 mysql的運行檔是什麼 Apr 11, 2023 am 10:38 AM

mysql的運行文件是mysqld;mysqld是一個可執行文件,代表著Mysql伺服器程序,執行這個文件可以直接啟動一個伺服器進程;而mysqld_safe是一個啟動腳本,它會間接調用mysqld,並且還會順帶啟動一個監控進程。

PHP Fatal error: Call to undefined method mysqli::prepare()的解決方法 PHP Fatal error: Call to undefined method mysqli::prepare()的解決方法 Jun 23, 2023 am 11:21 AM

當使用mysqli擴充來連接和操作MySQL資料庫時,有時會遇到PHPFatalerror:Calltoundefinedmethodmysqli::prepare()的錯誤。這個錯誤通常是由以下幾個原因引起的:PHP對mysqli擴充功能的支援不足;mysqli擴充沒有正確載入或配置;PHP程式碼有語法錯誤;MySQL伺服器沒有正確配置或正在執行

PHP Fatal error: Call to undefined function mysqli_stmt_bind_param()的解決方法 PHP Fatal error: Call to undefined function mysqli_stmt_bind_param()的解決方法 Jun 23, 2023 am 10:43 AM

在使用PHP開發網站時,資料庫的操作是非常常見的。而MySQLi是PHP中常用的操作MySQL資料庫的擴展,提供了比較完備的物件導向介面、過程化接口,以及支援預處理語句的操作。但有時候我們在使用mysqli的預處理語句時,會遇到這樣的錯誤:PHPFatalerror:Calltoundefinedfunctionmysqli_stmt_bin

See all articles