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

Query Builder Update - 类別

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

(扩充 Query_Builder_Where

Query_Builder_Update 类别为查询建立程序处理所有 update 操作,它扩充 Query_Builder_Where 类别,所以所有方法都继承。

table($table)

table 方法设定/改变要更新的资料表。

静态
参数
参数类型预设描述
$table字串必要资料表名称
回传回传目前实例。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 设定要更新的资料表
$query->table('admins');

// UPDATE `admins` ...

value($column, $value)

value 方法设定要更新的行和值。

静态
参数
参数类型预设描述
$column字串必要要更新的行
$value混合必要新值
回传回传目前实例。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 设定行
$query->value('name', 'Frank');

// UPDATE `users` SET `name` = "Frank"

set(array $pairs)

set 方法设定行并附加要更新的值。

静态
参数
参数类型预设描述
$pairs阵列必要行和值的关联阵列
回传回传目前实例。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 设定行和值
$query->set(array(
	'name' => 'John',
	'surname' => 'Doe',
));

// UPDATE `users` SET `name` = "John", `surname` = "Doe"

compile(\Database_Connection$db)

compile 方法回传 update SQL 查询做为一个字串。

静态
参数
参数类型预设描述
$db物件必要一个资料库连线
回传回传 SQL 查询做为一个字串。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 设定两个值
$query->set(array(
	'name' => 'Bert',
	'surname' => 'Klaassen',
));

// 取得资料库连线
$connection = Database_Connection::instance();

// 取得 SQL 查询
$sql = $query->compile($connection);

reset()

reset 方法重置目前实例的所有值。

静态
参数
回传回传目前实例。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 设定两个值
$query->set(array(
	'name' => 'Bert',
	'surname' => 'Klaassen',
));

// 重置它
$query->reset();

// 设定一个
$query->value('name', 'Hank');

// 取得资料库连线
$connection = Database_Connection::instance();

// 取得 SQL 查询
$sql = $query->compile($connection);

// UPDATE `users` SET `name` = "Hank"

join($table, $type = null)

join 方法附加要组合的资料表。

静态
参数
参数类型预设描述
$table混合必要资料表名称或 array($table, $alias)
$type混合
true
组合类型(LEFT、RIGHT、INNER、等等)
回传回传目前实例。
範例请看这里的範例

on($c1, $op, $c2)

on 方法为最后建立的 JOIN 语句添加 "ON ..." 条件。

静态
参数
参数类型预设描述
$c1混合必要资料表名称或 array($table, $alias)
$op字串必要逻辑运算子
$c2混合必要资料表名称或 array($table, $alias)
回传回传目前实例。
範例
// 预处理一个 update 语句
$query = DB::update('users');

// 组合一张资料表
$query->join('profiles');
$query->on('users.id', '=', 'profiles.user_id');

// 使用一个 Database_Expression 如此值不会被转义。
$query->value('users.profile_type', \DB::expr('`profiles`.`type`'));

// UPDATE `users` JOIN `profiles` ON `users`.`id` = `profiles`.`user_id` SET `users`.`profile_type` = `profiles`.`type`