首頁 後端開發 php教程 使用PDO建構函數連接資料庫及DSN詳解

使用PDO建構函數連接資料庫及DSN詳解

Apr 28, 2017 pm 05:37 PM

使用PDO建構子連接資料庫及DSN詳解

#pdo是php5中新加入的資料庫抽象層,為了解決存取不同資料庫統一介面的問題。類似PEAR::DB類別和ADODB類別的操作,不過它是直接封裝再php擴充中,可以自由選擇使用。

在上一篇《什麼是PDO? PDO的概特點以及安裝PDO的方法》中,我們介紹了什麼是PDO,介紹了PDO的特點以及安裝,那麼我們這篇文章介紹PDO建構函數連接資料庫以及DSN詳情!

PDO建構子連接資料庫

在PDO中,要建立資料庫的連接需要實例化PDO 的建構函數,PDO建構子的語法格式如下:

_construct(string $dsn[,string $username[,string $password[,array $driver_options]]])
登入後複製

建構子的參數說明如下:

dsn:資料來源名稱,包含主機名稱連接埠號碼和資料庫名稱。

username:連接資料庫的使用者名稱。

password:連接資料庫的密碼。

driver_options:連接資料庫的其它選項。

那麼我們下面直接用實例講解,透過PDO連接MySQL 資料庫,具體程式碼如下:

<?php
header("Content-Type:text/html; charset=utf-8");    //设置页面的编码格式
$dbms = "mysql";                                  // 数据库的类型
$dbName ="php_cn";                                //使用的数据库名称
$user = "root";                                   //使用的数据库用户名
$pwd = "root";                                    //使用的数据库密码
$host = "localhost";                              //使用的主机名称
$dsn  = "$dbms:host=$host;dbName=$dbName ";       
try{                                             //捕获异常
    $pdo = new PDO($dsn,$user,$pwd);             //实例化对象
    echo  "PDO连接数据库成功";
}catch (Exception $e){
    echo $e->getMessage()."<br>";
}
登入後複製

頁面輸出的結果如下圖:

使用PDO建構函數連接資料庫及DSN詳解

注意:如果上面有的地方填錯了,會透過try catch語句拋出例外!

DSN詳解

#什麼是DSN?

 DSN是Data Source Name(資料來源名稱)的縮寫。 DSN提供連接資料庫所需的資訊。 PDO的DSN包括3部分:PDO驅動名稱(如:mysql、sqlite或pgsql)、冒號和驅動特定的語法。每種資料庫都有其特定的驅動語法。

使用不同的資料庫時,必須先明確資料庫伺服器是完全獨立與 PHP 的,是實體。但在實際的情況可能是資料庫伺服器與 Web伺服器不在同一台運算上,此時需要透過PDO連接資料庫時,就修改DSN中的主機名稱。

由於資料庫伺服器只是特定的連接埠上監聽連線請求。每個資料庫伺服器都有一個預設的連接埠號碼(MySQL 是3306),但是資料庫管理員可以對連接埠號碼進行修改,因此有可能 PHP找不到資料庫的連接埠號碼,此時就可以在 DSN中包含連接埠號碼。例如:

$dsn="mysql:host=127.0.0.1;port=3306;dbname=admin";
登入後複製

由於一個資料庫中可能同時擁有多個資料庫,所以透過DSN連接資料庫時,通常都會包含資料庫名稱,這樣可以確保連線的是使用者想要的資料庫,而不是其他的資料庫了!

關於使用PDO建構子連接資料庫和DSN詳解我們就介紹到這裡,大家可以在本地測試一下,那麼我們下面給大家介紹PDO中執行SQL語句的幾種方法,具體請閱讀《PDO中執行SQL語句的三種方法》!

以上是使用PDO建構函數連接資料庫及DSN詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡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)

熱門話題

Java教學
1658
14
CakePHP 教程
1415
52
Laravel 教程
1309
25
PHP教程
1257
29
C# 教程
1231
24
PHP Fatal error: Call to undefined method PDO::prepare() in的解決方法 PHP Fatal error: Call to undefined method PDO::prepare() in的解決方法 Jun 22, 2023 pm 06:40 PM

PHP作為一種流行的Web開發語言,已經被使用很久了。 PHP中整合的PDO(PHP資料物件)類別是我們在開發Web應用程式過程中與資料庫互動的常用方法。但是,一些PHP開發者經常遇到的問題是,當使用PDO類別與資料庫互動時,他們會收到這樣的錯誤:PHPFatalerror:CalltoundefinedmethodPDO::prep

php如何使用PHP的PDO_PGSQL擴充? php如何使用PHP的PDO_PGSQL擴充? Jun 02, 2023 pm 06:10 PM

PHP作為一種流行的程式語言,在Web開發領域中有著廣泛的應用。其中,PHP的PDO_PGSQL擴展是一種常用的PHP擴展,它提供了與PostgreSQL資料庫的交互接口,可以實現PHP與PostgreSQL之間的資料傳輸和交互。本文將詳細介紹如何使用PHP的PDO_PGSQL擴充。一、什麼是PDO_PGSQL擴充? PDO_PGSQL是PHP的擴充庫,它

PHP和PDO: 如何執行批次插入和更新 PHP和PDO: 如何執行批次插入和更新 Jul 28, 2023 pm 07:41 PM

PHP和PDO:如何執行批次插入和更新導言:在使用PHP編寫資料庫相關的應用程式時,經常會遇到需要批次插入和更新資料的情況。傳統的做法是使用循環來執行多次資料庫操作,但這樣的方法效率較低。 PHP的PDO(PHPDataObject)提供了一種更有效率的方法來執行批次插入和更新操作,本文將介紹如何使用PDO來實現批次插入和更新。一、PDO簡介:PDO是PH

PHP和PDO: 如何進行分頁查詢和顯示數據 PHP和PDO: 如何進行分頁查詢和顯示數據 Jul 29, 2023 pm 04:10 PM

PHP和PDO:如何進行分頁查詢和顯示資料在開發網頁應用程式時,分頁查詢和顯示資料是一個非常常見的需求。透過分頁,我們可以一次顯示一定數量的數據,提高頁面載入速度和使用者體驗。在PHP中,使用PHP資料物件(PDO)函式庫可以輕鬆實現分頁查詢和顯示資料的功能。本文將介紹如何在PHP中使用PDO進行分頁查詢和顯示數據,並提供相應的程式碼範例。一、建立資料庫和資料表

PHP和PDO: 如何執行資料庫中的全文搜索 PHP和PDO: 如何執行資料庫中的全文搜索 Jul 30, 2023 pm 04:33 PM

PHP和PDO:如何執行資料庫中的全文搜尋在現代的Web應用程式中,資料庫是一個很重要的組成部分。當我們需要從大量的資料中搜尋特定的資訊時,全文搜尋是一種非常有用的功能。 PHP和PDO(PHPDataObjects)提供了一種簡單且強大的方法來執行資料庫中的全文搜尋。本文將介紹如何使用PHP和PDO來實現全文搜索,並提供一些範例程式碼來示範這個過程。首先

PHP和PDO: 如何處理資料庫中的JSON數據 PHP和PDO: 如何處理資料庫中的JSON數據 Jul 29, 2023 pm 05:17 PM

PHP和PDO:如何處理資料庫中的JSON資料在現代web開發中,處理和儲存大量資料是一個非常重要的任務。隨著行動應用和雲端運算的普及,越來越多的資料以JSON(JavaScriptObjectNotation)格式儲存在資料庫中。 PHP作為一種常用的伺服器端語言,它的PDO(PHPDataObject)擴充提供了一種方便的方式來處理和操作資料庫。本

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 PDO教學:從基礎到精通的進階指南 PHP PDO教學:從基礎到精通的進階指南 Feb 19, 2024 pm 06:30 PM

1.PDO簡介PDO是PHP的擴充庫,它提供了一個物件導向的方式來操作資料庫。 PDO支援多種資料庫,包括Mysql、postgresql、oracle、SQLServer等。 PDO使開發人員能夠使用統一的api來操作不同的資料庫,這使得開發人員可以在不同的資料庫之間輕鬆切換。 2.PDO連接資料庫要使用PDO連接資料庫,首先需要建立一個PDO物件。 PDO物件的建構函式接收三個參數:資料庫類型、主機名稱、資料庫使用者名稱和密碼。例如,以下程式碼建立了一個連接到mysql資料庫的物件:$dsn="mysq

See all articles