作成日:2006/06/17
3C.2 DSN(Data Source Name)
DSN ( データ ソース名 ) とは、データベースへのアクセスに必要な情報の事です。 ほとんどの(筆者の知っている)データベース抽象化レイアクラスでは DSN を使ってデータベースと接続します。 DSN は文字列によって表現されます。DSN の書式は統一されていますが、データベース固有の部分もあります。
但し、DSN の書式は、データベース抽象化レイアクラスごとに違います。
PEAR::DBのDSNは主に以下の要素から構成されます。
- 構文:DSN
- phptype(dbsyntax)://username:password@protocol+hostspec/database?option=value
DSNの構成要素
| 項目 | 説明 | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| phptype |
使用するデータベースドライバを指定しまし。以下のデータベースが使用できます:
|
||||||||||||||||||||||||||
| dbsyntax |
phptype に ODBC を使用する場合に、 接続するDBMS タイプを設定します。例えば:
|
||||||||||||||||||||||||||
| username | 接続時のログイン用ユーザ名 | ||||||||||||||||||||||||||
| password | 接続時のログイン用パスワード | ||||||||||||||||||||||||||
| protocol | 通信プロトコル ( tcp・unix など ) | ||||||||||||||||||||||||||
| hostspec |
接続先ホスト ホスト名[:ポート番号]で指定します。 ポート番号を省略すると既定の番号が使用されます |
||||||||||||||||||||||||||
| database |
データベース名 ファイル共有型のデータベースではファイル名を指定します。 またODBC接続ではODBCデータソース名を指定します。(以下の接続例を参照して下さい) |
||||||||||||||||||||||||||
| option = value | 接続オプション |
接続例
| 用例 | DSN |
|---|---|
| ローカルのMySQLに接続 | 'mysql://sunlight:password@localhost:3306/test'3306 はMySQLの既定ポート番号です。 |
| SQLiteに接続 | 'sqlite:///d:/WWWRoot/samples/sample.db'd:/WWWRoot/samples/sample.db はデータベースファイル名です。 |
| ODBCでAccessに接続 | 'odbc(access):///test'test はODBCのDSNです。あらかじめ、Windowsに登録しておく必要があります。 |
