Documentation TYPO3 par Ameos

ADODB_pdo_pgsql Class Reference

Inheritance diagram for ADODB_pdo_pgsql:
Collaboration diagram for ADODB_pdo_pgsql:
List of all members.

Public Member Functions

 _init ($parentDriver)
 ServerInfo ()
SelectLimit ($sql, $nrows=-1, $offset=-1, $inputarr=false, $secs2cache=0)
MetaTables ($ttype=false, $showSchema=false, $mask=false)
MetaColumns ($table, $normalize=true)

Public Attributes

 $metaDatabasesSQL = "select datname from pg_database where datname not in ('template0','template1') order by 1"
 character set to use - only for interbase, postgres and oci8
 $isoDates = true
 error function to call
 $sysDate = "CURRENT_DATE"
 Use 'true' to store the item compressed (uses zlib).
 $sysTimeStamp = "CURRENT_TIMESTAMP"
 name of function that returns the current date
 $blobEncodeType = 'C'
 $hasAffectedRows = true
 supports autoincrement ID?
 $hasLimit = false
 support mssql/access SELECT TOP 10 * FROM TABLE
 $true = 't'
 used by DBTimeStamp as the default timestamp fmt.
 $false = 'f'
 string that represents TRUE for a database
 $fmtDate = "'Y-m-d'"
 uppercase function
 $fmtTimeStamp = "'Y-m-d G:i:s'"
 used by DBDate() as the default date format used by the database
 $hasMoveFirst = true
 this is a readonly database - used by phpLens
 $hasGenID = true
 has ability to run MoveFirst(), scrolling backwards
 $_genIDSQL = "SELECT NEXTVAL('%s')"
 $_dropSeqSQL = "DROP SEQUENCE %s"
 $metaDefaultsSQL = "SELECT d.adnum as num, d.adsrc as def from pg_attrdef d, pg_class c where d.adrelid=c.oid and c.relname='%s' order by d.adnum"
 $random = 'random()'
 string length ofperator
 $concat_operator = '||'
 random function

Detailed Description

Definition at line 12 of file

Member Function Documentation

ADODB_pdo_pgsql::ServerInfo (  ) 

Get server version info...

An array with 2 elements: $arr['string'] is the description string, and $arr[version] is the version (also a string).

Reimplemented from ADODB_pdo.

Definition at line 65 of file

References ADOConnection::_findvers(), and ADOConnection::GetOne().

Referenced by MetaTables().

& ADODB_pdo_pgsql::SelectLimit ( sql,
nrows = -1,
offset = -1,
inputarr = false,
secs2cache = 0 

Will select, getting rows from $offset (1-based), for $nrows. This simulates the MySQL "select * from table limit $offset,$nrows" , and the PostgreSQL "select * from table limit $nrows offset $offset". Note that MySQL and PostgreSQL parameter ordering is the opposite of the other. eg. SelectLimit('select * from table',3); will return rows 1 to 3 (1-based) SelectLimit('select * from table',3,2); will return rows 3 to 5 (1-based)

Uses SELECT TOP for Microsoft databases (when $this->hasTop is set) BUG: Currently SelectLimit fails with $sql with LIMIT or TOP clause already set

[offset] is the row to start calculations from (1-based)
[nrows] is the number of rows to get
[inputarr] array of bind variables
[secs2cache] is a private parameter only used by jlim
the recordset ($rs->databaseType == 'array')

Reimplemented from ADODB_pdo.

Definition at line 72 of file

References ADOConnection::CacheExecute(), and ADOConnection::Execute().

& ADODB_pdo_pgsql::MetaTables ( ttype = false,
showSchema = false,
mask = false 

ttype can either be 'VIEW' or 'TABLE' or false. If false, both views and tables are returned. "VIEW" returns only views "TABLE" returns only tables
showSchema returns the schema/user with the table name, eg. USER.TABLE
mask is the input mask - only supported by oci8 and postgresql
array of tables for current database.

Reimplemented from ADODB_pdo.

Definition at line 84 of file

References ADOConnection::MetaTables(), ADOConnection::qstr(), and ServerInfo().

& ADODB_pdo_pgsql::MetaColumns ( table,
normalize = true 

List columns in a database as an array of ADOFieldObjects. See top of file for definition of object.

$table table name to query
$normalize makes table name case-insensitive (required by some databases) is optional database schema to use - not supported by all databases.
array of ADOFieldObjects for current table.

Reimplemented from ADODB_pdo.

Definition at line 115 of file

References $false, ADOConnection::_findschema(), ADOConnection::Execute(), ADOConnection::outp(), and ADOConnection::SetFetchMode().

Member Data Documentation


Initial value:

 "select tablename,'T' from pg_tables where tablename not like 'pg\_%'
        and tablename not in ('sql_features', 'sql_implementation_info', 'sql_languages',
         'sql_packages', 'sql_sizing', 'sql_sizing_profiles') 
        select viewname,'V' from pg_views where viewname not like 'pg\_%'"

Reimplemented from ADOConnection.

Definition at line 14 of file


Initial value:

 "SELECT a.attname,t.typname,a.attlen,a.atttypmod,a.attnotnull,a.atthasdef,a.attnum 
                FROM pg_class c, pg_attribute a,pg_type t 
                WHERE relkind in ('r','v') AND (c.relname='%s' or c.relname = lower('%s')) and a.attname not like '....%%'
AND a.attnum > 0 AND a.atttypid = t.oid AND a.attrelid = c.oid ORDER BY a.attnum"

Definition at line 24 of file


Initial value:

 "SELECT a.attname, t.typname, a.attlen, a.atttypmod, a.attnotnull, a.atthasdef, a.attnum 
FROM pg_class c, pg_attribute a, pg_type t, pg_namespace n 
WHERE relkind in ('r','v') AND (c.relname='%s' or c.relname = lower('%s'))
 and c.relnamespace=n.oid and n.nspname='%s' 
        and a.attname not like '....%%' AND a.attnum > 0 
        AND a.atttypid = t.oid AND a.attrelid = c.oid ORDER BY a.attnum"

Definition at line 30 of file


Initial value:

 "SELECT ic.relname AS index_name, a.attname AS column_name,i.indisunique AS unique_key, i.indisprimary AS primary_key 
        FROM pg_class bc, pg_class ic, pg_index i, pg_attribute a WHERE bc.oid = i.indrelid AND ic.oid = i.indexrelid AND (i.indkey[0] = a.attnum OR i.indkey[1] = a.attnum OR i.indkey[2] = a.attnum OR i.indkey[3] = a.attnum OR i.indkey[4] = a.attnum OR i.indkey[5] = a.attnum OR i.indkey[6] = a.attnum OR i.indkey[7] = a.attnum) AND a.attrelid = bc.oid AND bc.relname = '%s'"

Definition at line 38 of file

The documentation for this class was generated from the following file:

Généré par L'expert TYPO3 avec  doxygen 1.4.6