Documentation TYPO3 par Ameos |
Public Member Functions | |
MetaType ($t, $len=-1, $fieldobj=false) | |
ActualType ($meta) | |
AddColumnSQL ($tabname, $flds) | |
AlterColumnSQL ($tabname, $flds, $tableflds='', $tableoptions='') | |
DropColumnSQL ($tabname, $flds, $tableflds='', $tableoptions='') | |
_recreate_copy_table ($tabname, $dropflds, $tableflds, $tableoptions='') | |
DropTableSQL ($tabname) | |
_CreateSuffix ($fname, &$ftype, $fnotnull, $fdefault, $fautoinc, $fconstraint) | |
_DropAutoIncrement ($tabname) | |
_IndexSQL ($idxname, $tabname, $flds, $idxoptions) | |
_GetSize ($ftype, $ty, $fsize, $fprec) | |
Public Attributes | |
$databaseType = 'postgres' | |
$seqField = false | |
$seqPrefix = 'SEQ_' | |
$addCol = ' ADD COLUMN' | |
$quote = '"' | |
$renameTable = 'ALTER TABLE %s RENAME TO %s' | |
$dropTable = 'DROP TABLE %s CASCADE' |
Definition at line 16 of file datadict-postgres.inc.php.
ADODB2_postgres::AddColumnSQL | ( | $ | tabname, | |
$ | flds | |||
) |
Adding a new Column
reimplementation of the default function as postgres does NOT allow to set the default in the same statement
string | $tabname table-name | |
string | $flds column-names and types for the changed columns |
Reimplemented from ADODB_DataDict.
Definition at line 128 of file datadict-postgres.inc.php.
References ADODB_DataDict::_GenFields(), and ADODB_DataDict::TableName().
ADODB2_postgres::AlterColumnSQL | ( | $ | tabname, | |
$ | flds, | |||
$ | tableflds = '' , |
|||
$ | tableoptions = '' | |||
) |
Change the definition of one column
Postgres can't do that on it's own, you need to supply the complete defintion of the new table, to allow, recreating the table and copying the content over to the new table
string | $tabname table-name | |
string | $flds column-name and type for the changed column | |
string | $tableflds complete defintion of the new table, eg. for postgres, default '' | |
array/ | $tableoptions options for the new table see CreateTableSQL, default '' |
Reimplemented from ADODB_DataDict.
Definition at line 165 of file datadict-postgres.inc.php.
References _recreate_copy_table(), and ADOConnection::outp().
ADODB2_postgres::DropColumnSQL | ( | $ | tabname, | |
$ | flds, | |||
$ | tableflds = '' , |
|||
$ | tableoptions = '' | |||
) |
Drop one column
Postgres < 7.3 can't do that on it's own, you need to supply the complete defintion of the new table, to allow, recreating the table and copying the content over to the new table
string | $tabname table-name | |
string | $flds column-name and type for the changed column | |
string | $tableflds complete defintion of the new table, eg. for postgres, default '' | |
array/ | $tableoptions options for the new table see CreateTableSQL, default '' |
Reimplemented from ADODB_DataDict.
Definition at line 185 of file datadict-postgres.inc.php.
References _recreate_copy_table(), ADODB_DataDict::DropColumnSQL(), and ADOConnection::outp().
ADODB2_postgres::_recreate_copy_table | ( | $ | tabname, | |
$ | dropflds, | |||
$ | tableflds, | |||
$ | tableoptions = '' | |||
) |
Save the content into a temp. table, drop and recreate the original table and copy the content back in
We also take care to set the values of the sequenz and recreate the indexes. All this is done in a transaction, to not loose the content of the table, if something went wrong!
Definition at line 210 of file datadict-postgres.inc.php.
References ADODB_DataDict::CreateIndexSQL(), ADODB_DataDict::CreateTableSQL(), DropTableSQL(), ADODB_DataDict::MetaColumns(), and ADODB_DataDict::MetaIndexes().
Referenced by AlterColumnSQL(), and DropColumnSQL().