Fuel Documentation

DB Class

The DB class allows you to build and execute database queries and fetch the result.

DB::query

The query method returns an new Database_Query object.

Static Yes
Parameters
Param Default Description
$query required SQL query
Returns Returns a Database_Query_Builder_Select object.
Example
// Will prepare: SELECT * FROM `users`
$query = DB::query('SELECT * FROM `users`');

DB::select

The select method returns an new Database_Query_Builder_Select object.

Static Yes
Parameters
Param Default Description
$columns null Columns to select.
Returns Returns a Database_Query_Builder_Select object.
Example
// Will prepare: SELECT *
$query = DB::select();

// Will prepare: SELECT `id`, `name`
$query = DB::select('id', 'name');

DB::select_array

The select_array method returns an new Database_Query_Builder_Select object.

Static Yes
Parameters
Param Default Description
$columns array(); Array of columns to select.
Returns Returns a Database_Query_Builder_Select object.
Example
// Will prepare: SELECT *
$query = DB::select_array();

// Will prepare: SELECT `id`, `name`
$query = DB::select_array(array('id', 'name'));

DB::insert

The insert method returns an new Database_Query_Builder_Insert object.

Static Yes
Parameters
Param Default Description
$table null Array of columns to select.
$columns array(); Array of columns to select.
Returns Returns a Database_Query_Builder_Insert object.
Example
// Will prepare: INSERT INTO `table_name`
$query = DB::insert('table_name');

// Will prepare: INSERT INTO `table_name` (`id`, `name`)
$query = DB::insert('table_name', array('id', 'name'));

DB::update

The update method returns an new Database_Query_Builder_Update object.

Static Yes
Parameters
Param Default Description
$table null Table to update.
Returns Returns a Database_Query_Builder_Update object.
Example
// Will prepare: UPDATE `table_name`
$query = DB::update('table_name');

DB::delete

The insert method returns an new Database_Query_Builder_Delete object.

Static Yes
Parameters
Param Default Description
$table null The table to delete from.
Returns Returns a Database_Query_Builder_Delete object.
Example
// Will prepare: DELETE FROM `table_name`
$query = DB::delete('table_name');

DB::expr

The expr method returns an new Database_Expression object.

Static Yes
Parameters
Param Default Description
$expression null The expression.
Returns Returns a Database_Expression object.
Example
// returns new Database_Expression('COUNT(table_name.table_column)');
$query = DB::expr('COUNT(table_name.table_column)');

DB::quote

The quote method returns a quoted string for an SQL query.

Static Yes
Parameters
Param Default Description
$string required The string to quote
$db null The database connection.
Returns Returns a Database_Expression object.
Example
// returns 'something\'s quoted'.
$query = DB::quote("'something's quoted'");

// returns 'something\'s quoted' through a defined database connection.
$query = DB::quote("'something's quoted'", $db_connection);

DB::quote_identifier

The quote_identifier method returns a quoted string for an SQL query.

Static Yes
Parameters
Param Default Description
$string required The string, or array of strings, to quote.
$db null The database connection.
Returns Returns a quoted string for an SQL query.
Example
// `users`.`name`
print_r(DB::quote_identifier('users.name'));

// array(
//    [0] => `users`.`name`
// )
print_r(DB::quote_identifier(array('users.name')));

DB::quote_table

The quote_table method returns a quoted string for an SQL query.

Static Yes
Parameters
Param Default Description
$string required The string, or array of strings, to quote.
$db null The database connection.
Returns Returns a quoted string for an SQL query.
Example
// `users`
print_r(DB::quote_table('users'));

// array(
//    [0] => `users`
// )
print_r(DB::quote_identifier(array('users')));

DB::table_prefix

The table_prefix method returns the table name with the configured prefix. If not, then just the prefix is returned.

Static Yes
Parameters
Param Default Description
$string required The table name to prefix.
$db null The database connection.
Returns Returns the prefixed table name or the table name.
Example
// prefixed_table_name
print_r(DB::table_prefix('table_name'));

DB::escape

The escape method returns a escaped string for an SQL query.

Static Yes
Parameters
Param Default Description
$string required The string to escape.
$db null The database connection.
Returns Returns an escaped string for an SQL query.
Example
// 'or *\' \"'
print_r(DB::escape('or *\' "'));

DB::list_columns

The list_columns method return a lists all of the columns in a table. Optionally, a LIKE string can be used to search for specific fields.

Static Yes
Parameters
Param Default Description
$table null The table to look in.
$like null The column to search for.
$db null The database connection.
Returns Returns an array with field data.
Example
/*
Array
(
	[id] => Array
	(
		[type] => int
		[min] => -2147483648
		[max] => 2147483647
		[column_name] => id
		[column_default] => 
		[data_type] => int
		[is_nullable] => 
		[ordinal_position] => 1
		[display] => 255
		[comment] => 
		[extra] => auto_increment
		[key] => PRI
		[privileges] => select,insert,update,references
	)
	
	[name] => Array
	(
		[type] => string
		[column_name] => name
		[column_default] => 
		[data_type] => varchar
		[is_nullable] => 
		[ordinal_position] => 3
		[character_maximum_length] => 255
		[collation_name] => utf8_unicode_ci
		[comment] => 
		[extra] => 
		[key] => 
		[privileges] => select,insert,update,references
	)
)
*/
print_r(DB::list_columns('users'));

/*
Array
(
	[name] => Array
	(
		[type] => string
		[column_name] => name
		[column_default] => 
		[data_type] => varchar
		[is_nullable] => 
		[ordinal_position] => 3
		[character_maximum_length] => 255
		[collation_name] => utf8_unicode_ci
		[comment] => 
		[extra] => 
		[key] => 
		[privileges] => select,insert,update,references
	)
)
*/
print_r(DB::list_columns('users','%name%'));

DB::list_tables

The list_tables method return a lists all of the tables in a database. Optionally, a LIKE string can be used to search for specific tables.

Static Yes
Parameters
Param Default Description
$like null The table to search for.
$db null The database connection.
Returns Returns an array with table names.
Example
/*
Array
(
    [0] => areas
    [1] => fuel_sessions
    [2] => config
    [3] => files
)
*/
DB::list_tables();

/*
Array
(
    [0] => fuel_sessions

)
*/
DB::list_tables('%sessions%');

DB::datatype

The datatype method returns a normalized array describing the SQL data type.

Static Yes
Parameters
Param Default Description
$type required The SQL data type.
$db null The database connection.
Returns Returns a normalized array describing the SQL data type.
Example
/*
Array
(
    [type] => string
    [exact] => 1
)
*/
DB::datatype('char');

DB::count_records

The count_records method returns the number of records in a table.

Static Yes
Parameters
Param Default Description
$table required The table to count records from.
$db null The database connection.
Returns Returns the number of records in a table.
Example
// (int) 14
DB::count_records('users');

DB::count_last_query

The count_last_query method returns the number of records in the last query, without LIMIT or OFFSET applied.

Static Yes
Parameters
Param Default Description
$db null The database connection.
Returns Returns the number of records in the last query, without LIMIT or OFFSET applied.
Example
// SELECT * FROM `users` WHERE `active` = "yes" LIMIT 10;
$limited_result = DB::select()->from('users')->where('active', '=', 'yes')->limit(10)->execute();

// SELECT count(*) as count FROM `users` WHERE `active` = "yes";
DB::count_records('users');

DB::set_charset

The set_charset method sets the connection character set. This is called automatically by [static::connect].

Static Yes
Parameters
Param Default Description
$charset required The character set name.
$db null The database connection.
Returns void
Example
DB::set_charset('utf8');

DB::transactional

The transactional method sets the Database instance to use transactions.

Static Yes
Parameters
Param Default Description
$use_trans true Use tranactions TRUE/FALSE.
$db null The database connection.
Returns void
Example
DB::transactional(FALSE);

DB::start_transaction

The start_transaction method begins a transaction on an instance.

Static Yes
Parameters
Param Default Description
$db null The database connection.
Returns void
Example
DB::start_transaction();

DB::commit_transaction

The commit_transaction method commits all pending transactional queries.

Static Yes
Parameters
Param Default Description
$db null The database connection.
Returns void
Example
DB::commit_transaction();

DB::rollback_transaction

The rollback_transaction method rolls back all pending transactional queries.

Static Yes
Parameters
Param Default Description
$db null The database connection.
Returns void
Example
DB::rollback_transaction();