CDbSchema
Package | system.db.schema |
---|---|
Inheritance | abstract class CDbSchema » CComponent |
Subclasses | CMssqlSchema, CMysqlSchema, COciSchema, CPgsqlSchema, CSqliteSchema |
Since | 1.0 |
Version | $Id: CDbSchema.php 2224 2010-06-24 20:15:55Z qiang.xue $ |
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
commandBuilder | CDbCommandBuilder | the SQL command builder for this connection. | CDbSchema |
dbConnection | CDbConnection | database connection. | CDbSchema |
tableNames | array | Returns all table names in the database. | CDbSchema |
tables | array | Returns the metadata for all tables in the database. | CDbSchema |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | CComponent |
__construct() | Constructor. | CDbSchema |
__get() | Returns a property value, an event handler list or a behavior based on its name. | CComponent |
__isset() | Checks if a property value is null. | CComponent |
__set() | Sets value of a component property. | CComponent |
__unset() | Sets a component property to be null. | CComponent |
asa() | Returns the named behavior object. | CComponent |
attachBehavior() | Attaches a behavior to this component. | CComponent |
attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
attachEventHandler() | Attaches an event handler to an event. | CComponent |
canGetProperty() | Determines whether a property can be read. | CComponent |
canSetProperty() | Determines whether a property can be set. | CComponent |
checkIntegrity() | Enables or disables integrity check. | CDbSchema |
compareTableNames() | Compares two table names. | CDbSchema |
detachBehavior() | Detaches a behavior from the component. | CComponent |
detachBehaviors() | Detaches all behaviors from the component. | CComponent |
detachEventHandler() | Detaches an existing event handler. | CComponent |
disableBehavior() | Disables an attached behavior. | CComponent |
disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
enableBehavior() | Enables an attached behavior. | CComponent |
enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
evaluateExpression() | Evaluates a PHP expression or callback under the context of this component. | CComponent |
getCommandBuilder() | CDbSchema | |
getDbConnection() | CDbSchema | |
getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
getTable() | Obtains the metadata for the named table. | CDbSchema |
getTableNames() | Returns all table names in the database. | CDbSchema |
getTables() | Returns the metadata for all tables in the database. | CDbSchema |
hasEvent() | Determines whether an event is defined. | CComponent |
hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
hasProperty() | Determines whether a property is defined. | CComponent |
quoteColumnName() | Quotes a column name for use in a query. | CDbSchema |
quoteTableName() | Quotes a table name for use in a query. | CDbSchema |
raiseEvent() | Raises an event. | CComponent |
refresh() | Refreshes the schema. | CDbSchema |
resetSequence() | Resets the sequence value of a table's primary key. | CDbSchema |
Protected Methods
Method | Description | Defined By |
---|---|---|
createCommandBuilder() | Creates a command builder for the database. | CDbSchema |
createTable() | Creates a table instance representing the metadata for the named table. | CDbSchema |
findTableNames() | Returns all table names in the database. | CDbSchema |
Property Details
the SQL command builder for this connection.
database connection. The connection is active.
Returns all table names in the database.
Returns the metadata for all tables in the database.
Method Details
public void __construct(CDbConnection $conn)
| ||
$conn | CDbConnection | database connection. |
Constructor.
public void checkIntegrity(boolean $check=true, string $schema='')
| ||
$check | boolean | whether to turn on or off the integrity check. |
$schema | string | the schema of the tables. Defaults to empty string, meaning the current or default schema. |
Enables or disables integrity check.
public boolean compareTableNames(string $name1, string $name2)
| ||
$name1 | string | table name 1 |
$name2 | string | table name 2 |
{return} | boolean | whether the two table names refer to the same table. |
Compares two table names. The table names can be either quoted or unquoted. This method will consider both cases.
protected CDbCommandBuilder createCommandBuilder()
| ||
{return} | CDbCommandBuilder | command builder instance |
Creates a command builder for the database. This method may be overridden by child classes to create a DBMS-specific command builder.
abstract protected CDbTableSchema createTable($name)
| ||
$name | ||
{return} | CDbTableSchema | driver dependent table metadata, null if the table does not exist. |
Creates a table instance representing the metadata for the named table.
protected array findTableNames(string $schema='')
| ||
$schema | string | the schema of the tables. Defaults to empty string, meaning the current or default schema. If not empty, the returned table names will be prefixed with the schema name. |
{return} | array | all table names in the database. |
Returns all table names in the database. This method should be overridden by child classes in order to support this feature because the default implemenation simply throws an exception.
public CDbCommandBuilder getCommandBuilder()
| ||
{return} | CDbCommandBuilder | the SQL command builder for this connection. |
public CDbConnection getDbConnection()
| ||
{return} | CDbConnection | database connection. The connection is active. |
public CDbTableSchema getTable(string $name)
| ||
$name | string | table name |
{return} | CDbTableSchema | table metadata. Null if the named table does not exist. |
Obtains the metadata for the named table.
public array getTableNames(string $schema='')
| ||
$schema | string | the schema of the tables. Defaults to empty string, meaning the current or default schema. If not empty, the returned table names will be prefixed with the schema name. |
{return} | array | all table names in the database. |
Returns all table names in the database.
public array getTables(string $schema='')
| ||
$schema | string | the schema of the tables. Defaults to empty string, meaning the current or default schema. |
{return} | array | the metadata for all tables in the database. Each array element is an instance of CDbTableSchema (or its child class). The array keys are table names. |
Returns the metadata for all tables in the database.
public string quoteColumnName(string $name)
| ||
$name | string | column name |
{return} | string | the properly quoted column name |
Quotes a column name for use in a query.
public string quoteTableName(string $name)
| ||
$name | string | table name |
{return} | string | the properly quoted table name |
Quotes a table name for use in a query.
public void refresh()
|
Refreshes the schema. This method resets the loaded table metadata and command builder so that they can be recreated to reflect the change of schema.
public void resetSequence(CDbTableSchema $table, mixed $value=NULL)
| ||
$table | CDbTableSchema | the table schema 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. |
Resets 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.