Provides a shortcut to get Database related objects for making queries.
You pass the same parameters to these functions as you pass to the objects they return.
Class declared in MODPATH/database/classes/DB.php on line 3.
Create a new Database_Query_Builder_Delete.
// DELETE FROM users
$query = DB::delete('users');
string
$table
= NULL - Table to delete from Database_Query_Builder_Delete
public static function delete($table = null)
{
return new Database_Query_Builder_Delete($table);
}
Create a new Database_Expression which is not escaped. An expression is the only way to use SQL functions within query builders.
$expression = DB::expr('COUNT(users.id)');
$query = DB::update('users')->set(['login_count' => DB::expr('login_count + 1')])->where('id', '=', $id);
$users = ORM::factory('user')->where(DB::expr("BINARY `hash`"), '=', $hash)->find();
string
$string
required - Expression array
$parameters
= array(0) - Parameters Database_Expression
public static function expr($string, $parameters = [])
{
return new Database_Expression($string, $parameters);
}
Create a new Database_Query_Builder_Insert.
// INSERT INTO users (id, username)
$query = DB::insert('users', ['id', 'username']);
string
$table
= NULL - Table to insert into array
$columns
= NULL - List of column names or [$column, $alias] or object Database_Query_Builder_Insert
public static function insert($table = null, array $columns = null)
{
return new Database_Query_Builder_Insert($table, $columns);
}
Create a new Database_Query of the given type.
// Create a new SELECT query
$query = DB::query(Database::SELECT, 'SELECT * FROM users');
// Create a new DELETE query
$query = DB::query(Database::DELETE, 'DELETE FROM users WHERE id = 5');
Specifying the type changes the returned result. When using
Database::SELECT
, a Database_Query_Result will be returned.
Database::INSERT
queries will return the insert id and number of rows.
For all other queries, the number of affected rows is returned.
integer
$type
required - Type: Database::SELECT, Database::UPDATE, etc string
$sql
required - SQL statement Database_Query
public static function query($type, $sql)
{
return new Database_Query($type, $sql);
}
Create a new Database_Query_Builder_Select. Each argument will be
treated as a column. To generate a foo AS bar
alias, use an array.
// SELECT id, username
$query = DB::select('id', 'username');
// SELECT id AS user_id
$query = DB::select(['id', 'user_id']);
mixed
$columns
= NULL - Column name or [$column, $alias] or object Database_Query_Builder_Select
public static function select($columns = null)
{
return new Database_Query_Builder_Select(func_get_args());
}
Create a new Database_Query_Builder_Select from an array of columns.
// SELECT id, username
$query = DB::select_array(['id', 'username']);
array
$columns
= NULL - Columns to select Database_Query_Builder_Select
public static function select_array(array $columns = null)
{
return new Database_Query_Builder_Select($columns);
}
Create a new Database_Query_Builder_Update.
// UPDATE users
$query = DB::update('users');
string
$table
= NULL - Table to update Database_Query_Builder_Update
public static function update($table = null)
{
return new Database_Query_Builder_Update($table);
}