ホームページ >データベース >mysql チュートリアル >PDO接続データベースとDSNの詳細説明
PDO コンストラクター
PDO でデータベースとの接続を確立するには、PDO コンストラクターをインスタンス化する必要があります。 PDO コンストラクターの構文は次のとおりです。
__construct(string $dsn[,string $username [,string $password[,array $driver_options]]])
パラメータの説明は次のとおりです
dsn: ホスト名、ポート番号、データベース名を含むデータ ソース名。
username: データベースに接続するためのユーザー名
password: データベースに接続するためのパスワード
driver_options: データベースに接続するためのその他のオプション
例:
$dbms='mysql'; $dbName='admin'; $user='root'; $pwd='password'; $host='localhost'; $dsn="$dbms:host=$host;dbname=$dbName"; try{ $pdo=new PDO($dsn,$user,$pwd); echo "PDO连接MySQL成功"; }catch(Exception $e){ echo $e->getMessage().'<br>'; }
実行結果は次のようになります:
PDO连接MySQL成功
上記の間違った場所では、try catch ステートメントによって例外がスローされます
DSN の詳しい説明
DSN は Data Source Name の略称です。 DSN は、データベースへの接続に必要な情報を提供します。 PDO の DSN には、PDO ドライバー名 (mysql、sqlite、pgsql など)、コロン、およびドライバー固有の構文の 3 つの部分が含まれます。各データベースには、独自の固有のドライバー構文があります。
実際には、一部のデータベース サーバーが Web サーバーと同じコンピューター上にない場合があるため、DSN のホスト名を変更する必要があります。
データベース サーバーは特定のポートでのみ接続リクエストをリッスンするため、各データベース サーバーにはデフォルトのポート番号 (MySQL は 3306) がありますが、データベース管理者はポート番号を変更できるため、PHP がポート番号を見つけられない場合があります。このとき、データベースのポート番号を DSN に含めることができます。
例:
$dsn="mysql:host=127.0.0.1;port=3306;dbname=admin";
さらに、データベース サーバーには複数のデータベースがある場合があるため、DSN 経由でデータベースに接続する場合、通常はデータベース名が含まれます。これにより、接続されているデータベースが
であることが保証されます。ユーザーは他のデータベースではなく、 を望んでいます。
上記は、PDO 接続データベースと DSN の詳細な説明です。さらに関連するコンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。