Class yii\db\cubrid\QueryBuilder
| 继承 | yii\db\cubrid\QueryBuilder » yii\db\QueryBuilder » yii\base\BaseObject |
|---|---|
| 实现 | yii\base\Configurable |
| 可用版本自 | 2.0 |
| 源码 | https://github.com/yiichina/yii2/blob/api/framework/db/cubrid/QueryBuilder.php |
QueryBuilder 是 CUBRID 数据库的模式查询构建器(版本要求 version 9.3.x 以及更高)。
公共属性
| 属性 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| $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 | 从抽象列类型(键)映射到物理列类型(值)。 | yii\db\cubrid\QueryBuilder |
受保护的属性
| 属性 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| $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 |
公共方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| __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() | Creates a SQL command for adding a check constraint to an existing table. | yii\db\cubrid\QueryBuilder |
| addColumn() | Builds a SQL statement for adding a new DB column. | yii\db\QueryBuilder |
| addCommentOnColumn() | Builds a SQL command for adding comment to column. | yii\db\cubrid\QueryBuilder |
| addCommentOnTable() | Builds a SQL command for adding comment to table. | yii\db\cubrid\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() | yii\db\cubrid\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\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\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() | 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 |
| createView() | Creates a SQL View. | yii\db\QueryBuilder |
| delete() | Creates a DELETE SQL statement. | yii\db\QueryBuilder |
| dropCheck() | Creates a SQL command for dropping a check constraint. | yii\db\cubrid\QueryBuilder |
| dropColumn() | Builds a SQL statement for dropping a DB column. | yii\db\QueryBuilder |
| dropCommentFromColumn() | Builds a SQL command for adding comment to column. | yii\db\cubrid\QueryBuilder |
| dropCommentFromTable() | Builds a SQL command for adding comment to table. | yii\db\cubrid\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\QueryBuilder |
| dropIndex() | Builds a SQL statement for dropping an index. | yii\db\cubrid\QueryBuilder |
| dropPrimaryKey() | Builds a SQL statement for removing a primary key constraint to an existing table. | yii\db\QueryBuilder |
| dropTable() | Builds a SQL statement for dropping a DB table. | yii\db\QueryBuilder |
| dropUnique() | Creates a SQL command for dropping an unique constraint. | yii\db\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() | Initializes the object. | yii\db\QueryBuilder |
| insert() | Creates an INSERT SQL statement. | yii\db\QueryBuilder |
| renameColumn() | Builds a SQL statement for renaming a column. | yii\db\QueryBuilder |
| renameTable() | Builds a SQL statement for renaming a DB table. | yii\db\QueryBuilder |
| resetSequence() | 创建一个 SQL 语句,用于重置数据表主键的序列值。 主键序列将被重置, 以便插入的下一个新行的主键具有指定的值或者默认为 1。 | yii\db\cubrid\QueryBuilder |
| selectExists() | Creates a SELECT EXISTS() SQL statement. | yii\db\cubrid\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() | Creates an SQL statement to insert rows into a database table if they do not already exist (matching unique constraints), or update them if they do. | yii\db\cubrid\QueryBuilder |
受保护的方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| 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() | Contains array of default expression builders. Extend this method and override it, if you want to change default expression builders for this query builder. See $expressionBuilders docs for details. | yii\db\cubrid\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 |
| prepareInsertSelectSubQuery() | Prepare select-subquery and field names for INSERT INTO . | yii\db\QueryBuilder |
| prepareInsertValues() | Prepares a VALUES part for an INSERT SQL statement. |
yii\db\QueryBuilder |
| prepareUpdateSets() | Prepares a SET parts for an UPDATE SQL statement. |
yii\db\QueryBuilder |
| prepareUpsertColumns() | yii\db\QueryBuilder |
常量
| 常量 | 值 | 描述 | 被定义在 |
|---|---|---|---|
| PARAM_PREFIX | ':qp' | The prefix for automatically generated query binding parameters. | yii\db\QueryBuilder |
属性详情
从抽象列类型(键)映射到物理列类型(值)。
方法详情
Creates a SQL command for adding a check constraint to an existing table.
| public string addCheck($name, $table, $expression) | ||
| $name | string | The name of the check constraint. The name will be properly quoted by the method. |
| $table | string | The table that the check constraint will be added to. The name will be properly quoted by the method. |
| $expression | string | The SQL of the |
| return | string | The SQL statement for adding a check constraint to an existing table. |
|---|---|---|
| throws | yii\base\NotSupportedException | CUBRID 不支持此功能,抛出 NotSupportedException 异常。 |
Builds a SQL command for adding comment to column.
| public string addCommentOnColumn($table, $column, $comment) | ||
| $table | string | The table whose column is to be commented. The table name will be properly quoted by the method. |
| $column | string | The name of the column to be commented. The column name will be properly quoted by the method. |
| $comment | string | The text of the comment to be added. The comment will be properly quoted by the method. |
| return | string | The SQL statement for adding comment on column |
|---|---|---|
Builds a SQL command for adding comment to table.
| public string addCommentOnTable($table, $comment) | ||
| $table | string | The table whose column is to be commented. The table name will be properly quoted by the method. |
| $comment | string | The text of the comment to be added. The comment will be properly quoted by the method. |
| return | string | The SQL statement for adding comment on table |
|---|---|---|
| public string buildLimit($limit, $offset) | ||
| $limit | integer | |
| $offset | integer | |
| return | string | The LIMIT and OFFSET clauses |
|---|---|---|
Contains array of default expression builders. Extend this method and override it, if you want to change default expression builders for this query builder. See $expressionBuilders docs for details.
| protected array defaultExpressionBuilders() |
Creates a SQL command for dropping a check constraint.
| public string dropCheck($name, $table) | ||
| $name | string | The name of the check constraint to be dropped. The name will be properly quoted by the method. |
| $table | string | The table whose check constraint is to be dropped. The name will be properly quoted by the method. |
| return | string | The SQL statement for dropping a check constraint. |
|---|---|---|
| throws | yii\base\NotSupportedException | CUBRID 不支持此功能,抛出 NotSupportedException 异常。 |
Builds a SQL command for adding comment to column.
| public string dropCommentFromColumn($table, $column) | ||
| $table | string | The table whose column is to be commented. The table name will be properly quoted by the method. |
| $column | string | The name of the column to be commented. The column name will be properly quoted by the method. |
| return | string | The SQL statement for adding comment on column |
|---|---|---|
Builds a SQL command for adding comment to table.
| public string dropCommentFromTable($table) | ||
| $table | string | The table whose column is to be commented. The table name will be properly quoted by the method. |
| return | string | The SQL statement for adding comment on column |
|---|---|---|
Builds a SQL statement for dropping an index.
参见 http://www.cubrid.org/manual/93/en/sql/schema/table.html#drop-index-clause.
| public string dropIndex($name, $table) | ||
| $name | string | The name of the index to be dropped. The name will be properly quoted by the method. |
| $table | string | The table whose index is to be dropped. The name will be properly quoted by the method. |
| return | string | The SQL statement for dropping an index. |
|---|---|---|
创建一个 SQL 语句,用于重置数据表主键的序列值。 主键序列将被重置, 以便插入的下一个新行的主键具有指定的值或者默认为 1。
| public string resetSequence($tableName, $value = null) | ||
| $tableName | string | 将重置主键序列的数据表的名称 |
| $value | mixed | 插入的下一个新行的主键的值,如果未设置, 则下一个新行的主键的值为 1。 |
| return | string | 用于重建主键序列的 SQL 语句 |
|---|---|---|
| throws | yii\base\InvalidArgumentException | 如果数据表不存在或者没有与表关联的序列,则抛出 InvalidArgumentException 异常。 |
Creates a SELECT EXISTS() SQL statement.
| public string selectExists($rawSql) | ||
| $rawSql | string | The subquery in a raw form to select from. |
| return | string | The SELECT EXISTS() SQL statement. |
|---|---|---|
Creates an SQL statement to insert rows into a database table if they do not already exist (matching unique constraints), or update them if they do.
For example,
$sql = $queryBuilder->upsert('pages', [
'name' => 'Front page',
'url' => 'http://example.com/', // url is unique
'visits' => 0,
], [
'visits' => new \yii\db\Expression('visits + 1'),
], $params);
The method will properly escape the table and column names.
参见 https://www.cubrid.org/manual/en/9.3.0/sql/query/merge.html.
| public string upsert($table, $insertColumns, $updateColumns, &$params) | ||
| $table | string | The table that new rows will be inserted into/updated in. |
| $insertColumns | array|yii\db\Query | The column data (name => value) to be inserted into the table or instance
of \yii\db\cubrid\Query to perform |
| $updateColumns | array|boolean | The column data (name => value) to be updated if they already exist.
If |
| $params | array | The binding parameters that will be generated by this method. They should be bound to the DB command later. |
| return | string | The resulting SQL. |
|---|---|---|
| throws | yii\base\NotSupportedException | if this is not supported by the underlying DBMS. |