Class: Doctrine_Export_Mysql

Source Location: /Doctrine/Export/Mysql.php

Class Doctrine_Export_Mysql

Class Overview

Doctrine_Export_Mysql

Located in /Doctrine/Export/Mysql.php [line 34]

Doctrine_Connection_Module
   |
   --Doctrine_Export
      |
      --Doctrine_Export_Mysql
Author(s): Information Tags:
Version:  $Revision: 2288 $
Link:  www.phpdoctrine.com
Since:  1.0
License:  LGPL

Methods

[ Top ]
Inherited Properties, Constants, and Methods
Inherited Properties Inherited Methods Inherited Constants

Inherited From Doctrine_Export

Doctrine_Export::$valid_default_values

Inherited From Doctrine_Connection_Module

Doctrine_Connection_Module::$conn
Doctrine_Connection_Module::$moduleName

Inherited From Doctrine_Export

Doctrine_Export::alterTable()
alter an existing table (this method is implemented by the drivers)
Doctrine_Export::alterTableSql()
generates the sql for altering an existing table (this method is implemented by the drivers)
Doctrine_Export::createConstraint()
create a constraint on a table
Doctrine_Export::createConstraintSql()
create a constraint on a table
Doctrine_Export::createDatabase()
create a new database (this method is implemented by the drivers)
Doctrine_Export::createDatabaseSql()
create a new database (this method is implemented by the drivers)
Doctrine_Export::createForeignKeySql()
createForeignKeySql
Doctrine_Export::createIndex()
Get the stucture of a field into an array
Doctrine_Export::createIndexSql()
Get the stucture of a field into an array
Doctrine_Export::createSequence()
create sequence
Doctrine_Export::createSequenceSql()
return RDBMS specific create sequence statement (this method is implemented by the drivers)
Doctrine_Export::createTable()
create a new table
Doctrine_Export::createTableSql()
create a new table
Doctrine_Export::dropConstraint()
drop existing constraint
Doctrine_Export::dropDatabase()
drop an existing database (this method is implemented by the drivers)
Doctrine_Export::dropDatabaseSql()
drop an existing database (this method is implemented by the drivers)
Doctrine_Export::dropIndex()
drop existing index
Doctrine_Export::dropIndexSql()
dropIndexSql
Doctrine_Export::dropSequence()
dropSequenceSql drop existing sequence (this method is implemented by the drivers)
Doctrine_Export::dropSequenceSql()
dropSequenceSql drop existing sequence
Doctrine_Export::dropTable()
dropTable drop an existing table
Doctrine_Export::dropTableSql()
dropTableSql drop an existing table
Doctrine_Export::exportClasses()
exportClasses method for exporting Doctrine_Record classes to a schema
Doctrine_Export::exportClassesSql()
exportClassesSql method for exporting Doctrine_Record classes to a schema
Doctrine_Export::exportSchema()
exportSchema method for exporting Doctrine_Record classes to a schema
Doctrine_Export::exportSql()
exportSql returns the sql for exporting Doctrine_Record classes to a schema
Doctrine_Export::exportTable()
exportTable exports given table into database based on column and option definitions
Doctrine_Export::getAdvancedForeignKeyOptions()
getAdvancedForeignKeyOptions Return the FOREIGN KEY query section dealing with non-standard options as MATCH, INITIALLY DEFERRED, ON UPDATE, ...
Doctrine_Export::getCharsetFieldDeclaration()
Obtain DBMS specific SQL code portion needed to set the CHARACTER SET of a field declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getCheckDeclaration()
Obtain DBMS specific SQL code portion needed to set a CHECK constraint declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getCollationFieldDeclaration()
Obtain DBMS specific SQL code portion needed to set the COLLATION of a field declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getDeclaration()
Obtain DBMS specific SQL code portion needed to declare a generic type field to be used in statements like CREATE TABLE.
Doctrine_Export::getDefaultFieldDeclaration()
getDefaultDeclaration Obtain DBMS specific SQL code portion needed to set a default value declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getFieldDeclarationList()
Get declaration of a number of field in bulk
Doctrine_Export::getForeignKeyBaseDeclaration()
getForeignKeyBaseDeclaration Obtain DBMS specific SQL code portion needed to set the FOREIGN KEY constraint of a field declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getForeignKeyDeclaration()
getForeignKeyDeclaration Obtain DBMS specific SQL code portion needed to set the FOREIGN KEY constraint of a field declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getForeignKeyReferentialAction()
getForeignKeyReferentialAction
Doctrine_Export::getIndexDeclaration()
Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getIndexFieldDeclarationList()
getIndexFieldDeclarationList Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.
Doctrine_Export::getTemporaryTableQuery()
A method to return the required SQL string that fits between CREATE ... TABLE to create the table as a temporary table.
Doctrine_Export::getUniqueFieldDeclaration()
Obtain DBMS specific SQL code portion needed to set the UNIQUE constraint of a field declaration to be used in statements like CREATE TABLE.

Inherited From Doctrine_Connection_Module

Doctrine_Connection_Module::__construct()
Doctrine_Connection_Module::getConnection()
getConnection returns the connection object this module uses
Doctrine_Connection_Module::getModuleName()
getModuleName returns the name of this module

[ Top ]
Method Summary
boolean   alterTableSql()   alter an existing table
string   createDatabaseSql()   create a new database
void   createIndexSql()   Get the stucture of a field into an array
boolean   createSequence()   create sequence
void   createTableSql()   create a new table
string   dropDatabaseSql()   drop an existing database
void   dropIndexSql()   drop existing index
void   dropTableSql()   dropTable
string   getAdvancedForeignKeyOptions()   getAdvancedForeignKeyOptions Return the FOREIGN KEY query section dealing with non-standard options as MATCH, INITIALLY DEFERRED, ON UPDATE, ...
string   getDefaultFieldDeclaration()   getDefaultDeclaration Obtain DBMS specific SQL code portion needed to set a default value declaration to be used in statements like CREATE TABLE.
string   getIndexDeclaration()   Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.
string   getIndexFieldDeclarationList()   getIndexFieldDeclarationList Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.

[ Top ]
Properties
Methods
alterTableSql  [line 270]

  boolean alterTableSql( string $name, $changes, boolean $check  )

alter an existing table

Parameters:
string   $name:  name of the table that is intended to be changed.
array   $changes: 

associative array that contains the details of each type of change that is intended to be performed. The types of changes that are currently supported are defined as follows:

name

New name for the table.

add

Associative array with the names of fields to be added as indexes of the array. The value of each entry of the array should be set to another associative array with the properties of the fields to be added. The properties of the fields should be the same as defined by the Metabase parser.

remove

Associative array with the names of fields to be removed as indexes of the array. Currently the values assigned to each entry are ignored. An empty array should be used for future compatibility.

rename

Associative array with the names of fields to be renamed as indexes of the array. The value of each entry of the array should be set to another associative array with the entry named name with the new field name and the entry named Declaration that is expected to contain the portion of the field declaration already in DBMS specific SQL code as it is used in the CREATE TABLE statement.

change

Associative array with the names of the fields to be changed as indexes of the array. Keep in mind that if it is intended to change either the name of a field and any other properties, the change array entries should have the new names of the fields as array indexes.

The value of each entry of the array should be set to another associative array with the properties of the fields to that are meant to be changed as array entries. These entries should be assigned to the new values of the respective properties. The properties of the fields should be the same as defined by the Metabase parser.

Example array( 'name' => 'userlist', 'add' => array( 'quota' => array( 'type' => 'integer', 'unsigned' => 1 ) ), 'remove' => array( 'file_limit' => array(), 'time_limit' => array() ), 'change' => array( 'name' => array( 'length' => '20', 'definition' => array( 'type' => 'text', 'length' => 20, ), ) ), 'rename' => array( 'sex' => array( 'name' => 'gender', 'definition' => array( 'type' => 'text', 'length' => 1, 'default' => 'M', ), ) ) )

boolean   $check:  indicates whether the function should just check if the DBMS driver can perform the requested table alterations if the value is true or actually perform them otherwise.

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::alterTableSql()
generates the sql for altering an existing table (this method is implemented by the drivers)

[ Top ]
createDatabaseSql  [line 42]

  string createDatabaseSql( string $name  )

create a new database

Parameters:
string   $name:  name of the database that should be created

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::createDatabaseSql()
create a new database (this method is implemented by the drivers)

[ Top ]
createIndexSql  [line 468]

  void createIndexSql( string $table, string $name, $definition  )

Get the stucture of a field into an array

Parameters:
string   $table:  name of the table on which the index is to be created
string   $name:  name of the index to be created
array   $definition: 

associative array that defines properties of the index to be created. Currently, only one property named FIELDS is supported. This property is also an associative with the names of the index fields as array indexes. Each entry of this array is set to another type of associative array that specifies properties of the index that are specific to each field.

Currently, only the sorting property is supported. It should be used to define the sorting direction of the index. It may be set to either ascending or descending.

Not all DBMS support index sorting direction configuration. The DBMS drivers of those that do not support it ignore this property. Use the function supports() to determine whether the DBMS driver can manage indexes.

Example array( 'fields' => array( 'user_name' => array( 'sorting' => 'ASC' 'length' => 10 ), 'last_login' => array() ) )


API Tags:
Access:  public

Information Tags:
Author:  Leoncx
Throws:  PDOException

Redefinition of:
Doctrine_Export::createIndexSql()
Get the stucture of a field into an array

[ Top ]
createSequence  [line 374]

  boolean createSequence( string $sequenceName, [string $start = 1], [ $options = array()]  )

create sequence

Parameters:
string   $sequenceName:  name of the sequence to be created
string   $start:  start value of the sequence; default is 1
array   $options:  An associative array of table options: array( 'comment' => 'Foo', 'charset' => 'utf8', 'collate' => 'utf8_unicode_ci', 'type' => 'innodb', );

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::createSequence()
create sequence

[ Top ]
createTableSql  [line 90]

  void createTableSql( string $name, $fields, [ $options = array()]  )

create a new table

Parameters:
string   $name:  Name of the database that should be created
array   $fields:  Associative array that contains the definition of each field of the new table The indexes of the array entries are the names of the fields of the table an the array entry values are associative arrays like those that are meant to be passed with the field definitions to get[Type]Declaration() functions. array( 'id' => array( 'type' => 'integer', 'unsigned' => 1 'notnull' => 1 'default' => 0 ), 'name' => array( 'type' => 'text', 'length' => 12 ), 'password' => array( 'type' => 'text', 'length' => 12 ) );
array   $options:  An associative array of table options: array( 'comment' => 'Foo', 'charset' => 'utf8', 'collate' => 'utf8_unicode_ci', 'type' => 'innodb', );

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::createTableSql()
create a new table

[ Top ]
dropDatabaseSql  [line 52]

  string dropDatabaseSql( string $name  )

drop an existing database

Parameters:
string   $name:  name of the database that should be dropped

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::dropDatabaseSql()
drop an existing database (this method is implemented by the drivers)

[ Top ]
dropIndexSql  [line 617]

  void dropIndexSql( string $table, string $name  )

drop existing index

Parameters:
string   $table:  name of table that should be used in method
string   $name:  name of the index to be dropped

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::dropIndexSql()
dropIndexSql

[ Top ]
dropTableSql  [line 630]

  void dropTableSql( string $table  )

dropTable

Parameters:
string   $table:  name of table that should be dropped from the database

API Tags:
Access:  public

Information Tags:
Throws:  PDOException

Redefinition of:
Doctrine_Export::dropTableSql()
dropTableSql drop an existing table

[ Top ]
getAdvancedForeignKeyOptions  [line 596]

  string getAdvancedForeignKeyOptions( $definition  )

getAdvancedForeignKeyOptions Return the FOREIGN KEY query section dealing with non-standard options as MATCH, INITIALLY DEFERRED, ON UPDATE, ...

Parameters:
array   $definition: 

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::getAdvancedForeignKeyOptions()
getAdvancedForeignKeyOptions Return the FOREIGN KEY query section dealing with non-standard options as MATCH, INITIALLY DEFERRED, ON UPDATE, ...

[ Top ]
getDefaultFieldDeclaration  [line 496]

  string getDefaultFieldDeclaration( array $field  )

getDefaultDeclaration Obtain DBMS specific SQL code portion needed to set a default value declaration to be used in statements like CREATE TABLE.

Parameters:
array   $field:  field definition array

API Tags:
Return:  DBMS specific SQL code portion needed to set a default value
Access:  public


Redefinition of:
Doctrine_Export::getDefaultFieldDeclaration()
getDefaultDeclaration Obtain DBMS specific SQL code portion needed to set a default value declaration to be used in statements like CREATE TABLE.

[ Top ]
getIndexDeclaration  [line 523]

  string getIndexDeclaration( $name, $definition, string $charset  )

Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.

Parameters:
string   $charset:  name of the index
array   $definition:  index definition
   $name: 

API Tags:
Return:  DBMS specific SQL code portion needed to set an index
Access:  public


Redefinition of:
Doctrine_Export::getIndexDeclaration()
Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.

[ Top ]
getIndexFieldDeclarationList  [line 558]

  string getIndexFieldDeclarationList( $fields  )

getIndexFieldDeclarationList Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.

Parameters:
array   $fields: 

API Tags:
Access:  public


Redefinition of:
Doctrine_Export::getIndexFieldDeclarationList()
getIndexFieldDeclarationList Obtain DBMS specific SQL code portion needed to set an index declaration to be used in statements like CREATE TABLE.

[ Top ]