一般来说,$dsn是一个字符串,它的格式如下:
phptype(dbsyntax)://username:password@protocol+hostspec/database
* phptype: php后端数据库的类型名称(如mysql, odbc 等等.)
* dbsyntax: 数据库所使用的SQL语法标准,一般不用。
* protocol: 使用的通讯协议。(如tcp, unix 等等.)
* hostspec: 数据库所在的主机的描述。(形式是:主机名[:端口号])
* database: 数据库的名称。
* username: 登陆的用户名。
* password: 登陆的密码。
对于DSN,常用的形式如下:
* phptype://username:password@protocol+hostspec:110//usr/db_file.db
* phptype://username:password@hostspec/database_name
* phptype://username:password@hostspec
* phptype://username@hostspec
* phptype://hostspec/database
* phptype://hostspec
* phptype(dbsyntax)
* phptype
对于省略的部分,将使用缺省值。
当然,$dsn也可以是一个数组,数组的形式如下:
$dsn = array(
'phptype' => 'mysql',
'dbsyntax' => '',
'protocol' => '',
'hostspec' => 'localhost',
'database' => 'test',
'username' => 'root',
'password' => ''
)