Class yii\db\mysql\QueryBuilder
Inheritance | yii\db\mysql\QueryBuilder » yii\db\QueryBuilder » yii\base\Object |
---|---|
Implements | yii\base\Configurable |
Available since version | 2.0 |
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/db/mysql/QueryBuilder.php |
QueryBuilder is the query builder for MySQL databases.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$db | yii\db\Connection | The database connection. | yii\db\QueryBuilder |
$separator | string | The separator between different fragments of a SQL statement. | yii\db\QueryBuilder |
$typeMap | array | Mapping from abstract column types (keys) to physical column types (values). | yii\db\mysql\QueryBuilder |
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
$conditionBuilders | array | Map of query condition to builder methods. | yii\db\QueryBuilder |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\Object |
__construct() | Constructor. | yii\db\QueryBuilder |
__get() | Returns the value of an object property. | yii\base\Object |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Object |
__set() | Sets value of an object property. | yii\base\Object |
__unset() | Sets an object property to null. | yii\base\Object |
addColumn() | Builds a SQL statement for adding a new DB column. | yii\db\QueryBuilder |
addForeignKey() | Builds a SQL statement for adding a foreign key constraint to an existing table. | yii\db\QueryBuilder |
addPrimaryKey() | Builds a SQL statement for adding a primary key constraint to an existing table. | yii\db\QueryBuilder |
alterColumn() | Builds a SQL statement for changing the definition of a column. | yii\db\QueryBuilder |
batchInsert() | Generates a batch INSERT SQL statement. | yii\db\QueryBuilder |
build() | Generates a SELECT SQL statement from a yii\db\Query object. | yii\db\QueryBuilder |
buildAndCondition() | Connects two or more SQL expressions with the AND or OR operator. |
yii\db\QueryBuilder |
buildBetweenCondition() | Creates an SQL expressions with the BETWEEN operator. |
yii\db\QueryBuilder |
buildColumns() | Processes columns and properly quotes them if necessary. | yii\db\QueryBuilder |
buildCondition() | Parses the condition specification and generates the corresponding SQL expression. | yii\db\QueryBuilder |
buildExistsCondition() | Creates an SQL expressions with the EXISTS operator. |
yii\db\QueryBuilder |
buildFrom() | yii\db\QueryBuilder | |
buildGroupBy() | yii\db\QueryBuilder | |
buildHashCondition() | Creates a condition based on column-value pairs. | yii\db\QueryBuilder |
buildHaving() | yii\db\QueryBuilder | |
buildInCondition() | Creates an SQL expressions with the IN operator. |
yii\db\QueryBuilder |
buildJoin() | yii\db\QueryBuilder | |
buildLikeCondition() | Creates an SQL expressions with the LIKE operator. |
yii\db\QueryBuilder |
buildLimit() | yii\db\mysql\QueryBuilder | |
buildNotCondition() | Inverts an SQL expressions with NOT operator. |
yii\db\QueryBuilder |
buildOrderBy() | yii\db\QueryBuilder | |
buildOrderByAndLimit() | Builds the ORDER BY and LIMIT/OFFSET clauses and appends them to the given SQL. | yii\db\QueryBuilder |
buildSelect() | yii\db\QueryBuilder | |
buildSimpleCondition() | Creates an SQL expressions like "column" operator value . |
yii\db\QueryBuilder |
buildUnion() | yii\db\QueryBuilder | |
buildWhere() | yii\db\QueryBuilder | |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Object |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Object |
checkIntegrity() | Builds a SQL statement for enabling or disabling integrity check. | yii\db\mysql\QueryBuilder |
className() | Returns the fully qualified name of this class. | yii\base\Object |
createIndex() | Builds a SQL statement for creating a new index. | yii\db\QueryBuilder |
createTable() | Builds a SQL statement for creating a new DB table. | yii\db\QueryBuilder |
delete() | Creates a DELETE SQL statement. | yii\db\QueryBuilder |
dropColumn() | Builds a SQL statement for dropping a DB column. | yii\db\QueryBuilder |
dropForeignKey() | Builds a SQL statement for dropping a foreign key constraint. | yii\db\mysql\QueryBuilder |
dropIndex() | Builds a SQL statement for dropping an index. | yii\db\QueryBuilder |
dropPrimaryKey() | Builds a SQL statement for removing a primary key constraint to an existing table. | yii\db\mysql\QueryBuilder |
dropTable() | Builds a SQL statement for dropping a DB table. | yii\db\QueryBuilder |
getColumnType() | Converts an abstract column type into a physical column type. | yii\db\QueryBuilder |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Object |
hasProperty() | Returns a value indicating whether a property is defined. | yii\base\Object |
init() | Initializes the object. | yii\base\Object |
insert() | Creates an INSERT SQL statement. | yii\db\mysql\QueryBuilder |
renameColumn() | Builds a SQL statement for renaming a column. | yii\db\mysql\QueryBuilder |
renameTable() | Builds a SQL statement for renaming a DB table. | yii\db\QueryBuilder |
resetSequence() | Creates a SQL statement for resetting the sequence value of a table's primary key. | yii\db\mysql\QueryBuilder |
truncateTable() | Builds a SQL statement for truncating a DB table. | yii\db\QueryBuilder |
update() | Creates an UPDATE SQL statement. | yii\db\QueryBuilder |
Protected Methods
Method | Description | Defined By |
---|---|---|
buildCompositeInCondition() | Builds SQL for IN condition | yii\db\QueryBuilder |
buildSubqueryInCondition() | Builds SQL for IN condition | yii\db\QueryBuilder |
hasLimit() | Checks to see if the given limit is effective. | yii\db\QueryBuilder |
hasOffset() | Checks to see if the given offset is effective. | yii\db\QueryBuilder |
Constants
Constant | Value | Description | Defined By |
---|---|---|---|
PARAM_PREFIX | ':qp' | The prefix for automatically generated query binding parameters. | yii\db\QueryBuilder |
Property Details
Mapping from abstract column types (keys) to physical column types (values).
Method Details
string buildLimit( $limit, $offset ) | ||
$limit | integer | |
$offset | integer | |
return | string | The LIMIT and OFFSET clauses |
---|
Builds a SQL statement for enabling or disabling integrity check.
string checkIntegrity( $check = true, $schema = '', $table = '' ) | ||
$check | boolean | Whether to turn on or off the integrity check. |
$schema | string | The schema of the tables. Meaningless for MySQL. |
$table | string | The table name. Meaningless for MySQL. |
return | string | The SQL statement for checking integrity |
---|
Builds a SQL statement for dropping a foreign key constraint.
string dropForeignKey( $name, $table ) | ||
$name | string | The name of the foreign key constraint to be dropped. The name will be properly quoted by the method. |
$table | string | The table whose foreign is to be dropped. The name will be properly quoted by the method. |
return | string | The SQL statement for dropping a foreign key constraint. |
---|
Builds a SQL statement for removing a primary key constraint to an existing table.
string dropPrimaryKey( $name, $table ) | ||
$name | string | The name of the primary key constraint to be removed. |
$table | string | The table that the primary key constraint will be removed from. |
return | string | The SQL statement for removing a primary key constraint from an existing table. |
---|
Creates an INSERT SQL statement.
For example,
$sql = $queryBuilder->insert('user', [
'name' => 'Sam',
'age' => 30,
], $params);
The method will properly escape the table and column names.
string insert( $table, $columns, <b>&</b>$params ) | ||
$table | string | The table that new rows will be inserted into. |
$columns | array | The column data (name => value) to be inserted into the table. |
$params | array | The binding parameters that will be generated by this method. They should be bound to the DB command later. |
return | string | The INSERT SQL |
---|
Builds a SQL statement for renaming a column.
string renameColumn( $table, $oldName, $newName ) | ||
$table | string | The table whose column is to be renamed. The name will be properly quoted by the method. |
$oldName | string | The old name of the column. The name will be properly quoted by the method. |
$newName | string | The new name of the column. The name will be properly quoted by the method. |
return | string | The SQL statement for renaming a DB column. |
---|---|---|
throws | yii\db\Exception |
Creates a SQL statement for resetting the sequence value of a table's primary key.
The sequence will be reset such that the primary key of the next new row inserted will have the specified value or 1.
string resetSequence( $tableName, $value = null ) | ||
$tableName | string | The name of the table whose primary key sequence will be reset |
$value | mixed | The value for the primary key of the next new row inserted. If this is not set, the next new row's primary key will have a value 1. |
return | string | The SQL statement for resetting sequence |
---|---|---|
throws | yii\base\InvalidParamException | if the table does not exist or there is no sequence associated with the table. |