Class yii\db\mysql\QueryBuilder
| Inheritance | yii\db\mysql\QueryBuilder » yii\db\QueryBuilder » yii\base\BaseObject |
|---|---|
| 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 |
| $conditionClasses | array | Map of condition aliases to condition classes. | yii\db\QueryBuilder |
| $expressionBuilders | string[]|yii\db\ExpressionBuilderInterface[] | Maps expression class to expression builder class. | yii\db\QueryBuilder |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\BaseObject |
| __construct() | Constructor. | yii\db\QueryBuilder |
| __get() | Returns the value of an object property. | yii\base\BaseObject |
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject |
| __set() | Sets value of an object property. | yii\base\BaseObject |
| __unset() | Sets an object property to null. | yii\base\BaseObject |
| addCheck() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| addColumn() | Builds a SQL statement for adding a new DB column. | yii\db\QueryBuilder |
| addCommentOnColumn() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| addCommentOnTable() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| addDefaultValue() | Creates a SQL command for adding a default value constraint to an existing table. | 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 |
| addUnique() | Creates a SQL command for adding an unique 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 |
| bindParam() | Helper method to add $value to $params array using PARAM_PREFIX. | 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 |
| buildExpression() | Builds given $expression | 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() | {@inheritdoc} | 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 | |
| buildWithQueries() | yii\db\QueryBuilder | |
| canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\BaseObject |
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject |
| 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\BaseObject |
| createConditionFromArray() | Transforms $condition defined in array format (as described in yii\db\Query::where() to instance of \yii\db\yii\db\condition\ConditionInterface according to $conditionClasses map. | yii\db\QueryBuilder |
| createIndex() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| createTable() | Builds a SQL statement for creating a new DB table. | yii\db\QueryBuilder |
| createView() | Creates a SQL View. | yii\db\QueryBuilder |
| delete() | Creates a DELETE SQL statement. | yii\db\QueryBuilder |
| dropCheck() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| dropColumn() | Builds a SQL statement for dropping a DB column. | yii\db\QueryBuilder |
| dropCommentFromColumn() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| dropCommentFromTable() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| dropDefaultValue() | Creates a SQL command for dropping a default value constraint. | 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 |
| dropUnique() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| dropView() | Drops a SQL View. | yii\db\QueryBuilder |
| executeResetSequence() | Execute a SQL statement for resetting the sequence value of a table's primary key. | yii\db\QueryBuilder |
| getColumnType() | Converts an abstract column type into a physical column type. | yii\db\QueryBuilder |
| getExpressionBuilder() | Gets object of yii\db\ExpressionBuilderInterface that is suitable for $expression. | yii\db\QueryBuilder |
| hasMethod() | Returns a value indicating whether a method is defined. | yii\base\BaseObject |
| hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject |
| init() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| insert() | Creates an INSERT SQL statement. | yii\db\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 |
| selectExists() | Creates a SELECT EXISTS() SQL statement. | yii\db\QueryBuilder |
| setConditionClasses() | Setter for $conditionClasses property. | yii\db\QueryBuilder |
| setExpressionBuilders() | Setter for $expressionBuilders property. | yii\db\QueryBuilder |
| truncateTable() | Builds a SQL statement for truncating a DB table. | yii\db\QueryBuilder |
| update() | Creates an UPDATE SQL statement. | yii\db\QueryBuilder |
| upsert() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| defaultConditionClasses() | Contains array of default condition classes. Extend this method, if you want to change default condition classes for the query builder. See $conditionClasses docs for details. | yii\db\QueryBuilder |
| defaultExpressionBuilders() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| extractAlias() | Extracts table alias if there is one or returns false | yii\db\QueryBuilder |
| hasLimit() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| hasOffset() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| prepareInsertSelectSubQuery() | Prepare select-subquery and field names for INSERT INTO . | yii\db\QueryBuilder |
| prepareInsertValues() | {@inheritdoc} | yii\db\mysql\QueryBuilder |
| prepareUpdateSets() | Prepares a SET parts for an UPDATE SQL statement. |
yii\db\QueryBuilder |
| prepareUpsertColumns() | 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
{@inheritdoc}
| public void addCheck ( $name, $table, $expression ) | ||
| $name | ||
| $table | ||
| $expression | ||
| throws | yii\base\NotSupportedException | this is not supported by MySQL. |
|---|---|---|
{@inheritdoc}
| public void addCommentOnColumn ( $table, $column, $comment ) | ||
| $table | ||
| $column | ||
| $comment | ||
{@inheritdoc}
| public void addCommentOnTable ( $table, $comment ) | ||
| $table | ||
| $comment | ||
{@inheritdoc}
| public void buildLimit ( $limit, $offset ) | ||
| $limit | ||
| $offset | ||
Builds a SQL statement for enabling or disabling integrity check.
| public 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 |
|---|---|---|
{@inheritdoc}
See also https://bugs.mysql.com/bug.php?id=48875.
| public void createIndex ( $name, $table, $columns, $unique = false ) | ||
| $name | ||
| $table | ||
| $columns | ||
| $unique | ||
{@inheritdoc}
| protected void defaultExpressionBuilders ( ) |
{@inheritdoc}
| public void dropCheck ( $name, $table ) | ||
| $name | ||
| $table | ||
| throws | yii\base\NotSupportedException | this is not supported by MySQL. |
|---|---|---|
{@inheritdoc}
| public void dropCommentFromColumn ( $table, $column ) | ||
| $table | ||
| $column | ||
{@inheritdoc}
| public void dropCommentFromTable ( $table ) | ||
| $table | ||
Builds a SQL statement for dropping a foreign key constraint.
| public 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.
| public 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. |
|---|---|---|
{@inheritdoc}
| public void dropUnique ( $name, $table ) | ||
| $name | ||
| $table | ||
{@inheritdoc}
| protected void hasLimit ( $limit ) | ||
| $limit | ||
{@inheritdoc}
| protected void hasOffset ( $offset ) | ||
| $offset | ||
{@inheritdoc}
| public void init ( ) |
{@inheritdoc}
| protected void prepareInsertValues ( $table, $columns, $params = [] ) | ||
| $table | ||
| $columns | ||
| $params | ||
Builds a SQL statement for renaming a column.
| public 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.
| public 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\InvalidArgumentException | if the table does not exist or there is no sequence associated with the table. |
{@inheritdoc}
See also https://downloads.mysql.com/docs/refman-5.1-en.pdf.
| public void upsert ( $table, $insertColumns, $updateColumns, &$params ) | ||
| $table | ||
| $insertColumns | ||
| $updateColumns | ||
| $params | ||