ADODB2_postgres Class Reference

Inheritance diagram for ADODB2_postgres:

Inheritance graph
[legend]
Collaboration diagram for ADODB2_postgres:

Collaboration graph
[legend]

List of all members.

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'


Detailed Description

Definition at line 16 of file datadict-postgres.inc.php.


Member Function Documentation

ADODB2_postgres::ActualType ( meta  ) 

Returns the actual type given a character code.

C: varchar X: CLOB (character large object) or largest varchar size if CLOB is not supported C2: Multibyte varchar X2: Multibyte CLOB

B: BLOB (binary large object)

D: Date T: Date-time L: Integer field suitable for storing booleans (0 or 1) I: Integer F: Floating point number N: Numeric or decimal number

Reimplemented from ADODB_DataDict.

Definition at line 90 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

Parameters:
string $tabname table-name
string $flds column-names and types for the changed columns
Returns:
array with SQL strings

Reimplemented from ADODB_DataDict.

Definition at line 128 of file datadict-postgres.inc.php.

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

Parameters:
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 ''
Returns:
array with SQL strings

Reimplemented from ADODB_DataDict.

Definition at line 165 of file datadict-postgres.inc.php.

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

Parameters:
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 ''
Returns:
array with SQL strings

Reimplemented from ADODB_DataDict.

Definition at line 185 of file datadict-postgres.inc.php.

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.

ADODB2_postgres::_GetSize ( ftype,
ty,
fsize,
fprec 
)

GENERATE THE SIZE PART OF THE DATATYPE $ftype is the actual type $ty is the type defined originally in the DDL

Reimplemented from ADODB_DataDict.

Definition at line 361 of file datadict-postgres.inc.php.


The documentation for this class was generated from the following file:
This documentation has been generated automatically from TYPO3 source code using Doxygen and is provided as is by Cast Iron Coding as a courtesy to other TYPO3 developers and users. Please consider Cast Iron Coding — a full-service web development agency in Portland, Oregon specializing in TYPO3 extension development — for all of your TYPO3 development and consulting needs!