当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

Database 简介 - 类別

优质
小牛编辑
140浏览
2023-12-01

简介

Fuel 提供基于资料库抽象层的驱动程序, 在编写的时候支援的驱动程序有 MySQL、MySQLi 和 PDO。 除了常规的资料库互动,Fuel 也具有 DBUtil 类别以执行资料库操作如建立资料库、 添加栏位及更多。

请注意:并非所有的特色都被每一种驱动程序支援。

配置

为了开始与资料库协作,你必须变更资料库设定。 全域设定对你在 APPPATH/config/db.php 定义的所有 环境 是有效的。你在位于适当环境配置文件夹中的 db.php 定义环境特定资料库设定。 两者将被合併以形成完整的资料库配置。

资料库配置像这样的格式:

// MySQL 驱动程序配置
'development' => array(
	'type'           => 'mysqli',
	'connection'     => array(
		'hostname'       => 'localhost',
		'port'           => '3306',
		'database'       => 'fuel_db',
		'username'       => 'your_username',
		'password'       => 'y0uR_p@ssW0rd',
		'persistent'     => false,
		'compress'       => false,
	),
	'identifier'     => '`',
	'table_prefix'   => '',
	'charset'        => 'utf8',
	'enable_cache'   => true,
	'profiling'      => false,
	'readonly'       => false,
),

// PDO 驱动程序配置,使用 PostgreSQL
'production' => array(
	'type'           => 'pdo',
	'connection'     => array(
		'dsn'            => 'pgsql:host=localhost;dbname=fuel_db',
		'username'       => 'your_username',
		'password'       => 'y0uR_p@ssW0rd',
		'persistent'     => false,
		'compress'       => false,
	),
	'identifier'     => '"',
	'table_prefix'   => '',
	'charset'        => 'utf8',
	'enable_cache'   => true,
	'profiling'      => false,
	'readonly'       => array('slave1', 'slave2', 'slave3'),
),

'slave1' => array(
	// 第一生产唯读 slave db 的配置
),

'slave2' => array(
	// 第二生产唯读 slave db 的配置
),

'slave3' => array(
	// 第三生产唯读 slave db 的配置
),

请注意,type 对所有连线都是必要的。

所有配置设定

设定类型描述
type字串要使用什幺类型的连线,可以是 mysql、mysqli 或 pdo。
connection阵列连线设定阵列
connection.dsn字串给 PDO 的连线 DSN。
connection.username字串连线使用者。
connection.password字串连线密码。
connection.persistent布林是否启动一个持久的连线。
connection.compress布林当使用 MySQL/MySQLi 时,是否使用客户端压缩。
identifier字串用于引用识别符的分隔符。
table_prefix字串资料表前缀。
charset字串连线字符集。
enable_cache布林是否允许快取,将覆写连线基础上的查询快取设定。
profiling布林是否添加连线查询到分析器。
readonly阵列|false如果你有一个 master/slave 资料库设定,你可以使用它来定义一个 slave 连线的阵列,它可以被用在随机的读取操作。

一旦你配置到位,是时候使用它