Adodb Dokumentation  V5.14 8 Sept 2011
ADODB2_firebird Klassenreferenz
Klassendiagramm für ADODB2_firebird:
Zusammengehörigkeiten von ADODB2_firebird:

Öffentliche Methoden

 ActualType ($meta)
 NameQuote ($name=NULL)
 CreateDatabase ($dbname, $options=false)
 _DropAutoIncrement ($t)
 _CreateSuffix ($fname, &$ftype, $fnotnull, $fdefault, $fautoinc, $fconstraint, $funsigned)
 _Triggers ($tabname, $tableoptions)

Datenfelder

 $databaseType = 'firebird'
 $seqField = false
 $seqPrefix = 'gen_'
 $blobSize = 40000

Ausführliche Beschreibung

V5.14 8 Sept 2011 (c) 2000-2011 John Lim (jlim::natsoft.com). All rights reserved. Released under both BSD license and Lesser GPL library license. Whenever there is any discrepancy between the two licenses, the BSD license will take precedence.

Set tabs to 4 for best viewing.

Definiert in Zeile 13 der Datei datadict-firebird.inc.php.


Dokumentation der Elementfunktionen

_Triggers ( tabname,
taboptions 
)

GENERATE TRIGGERS IF NEEDED used when table has auto-incrementing field that is emulated using triggers

Erneute Implementation von ADODB_DataDict.

Definiert in Zeile 118 der Datei datadict-firebird.inc.php.

        {       
                if (!$this->seqField) return array();
                
                $tab1 = preg_replace( '/"/', '', $tabname );
                if ($this->schema) {
                        $t = strpos($tab1,'.');
                        if ($t !== false) $tab = substr($tab1,$t+1);
                        else $tab = $tab1;
                        $seqField = $this->seqField;
                        $seqname = $this->schema.'.'.$this->seqPrefix.$tab;
                        $trigname = $this->schema.'.trig_'.$this->seqPrefix.$tab;
                } else {
                        $seqField = $this->seqField;
                        $seqname = $this->seqPrefix.$tab1;
                        $trigname = 'trig_'.$seqname;
                }
                if (isset($tableoptions['REPLACE']))
                { $sql[] = "DROP GENERATOR \"$seqname\"";
                  $sql[] = "CREATE GENERATOR \"$seqname\"";
                  $sql[] = "ALTER TRIGGER \"$trigname\" BEFORE INSERT OR UPDATE AS BEGIN IF ( NEW.$seqField IS NULL OR NEW.$seqField = 0 ) THEN NEW.$seqField = GEN_ID(\"$seqname\", 1); END";
                }
                else
                { $sql[] = "CREATE GENERATOR \"$seqname\"";
                  $sql[] = "CREATE TRIGGER \"$trigname\" FOR $tabname BEFORE INSERT OR UPDATE AS BEGIN IF ( NEW.$seqField IS NULL OR NEW.$seqField = 0 ) THEN NEW.$seqField = GEN_ID(\"$seqname\", 1); END";
                }
                
                $this->seqField = false;
                return $sql;
        }
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

Erneute Implementation von ADODB_DataDict.

Definiert in Zeile 20 der Datei datadict-firebird.inc.php.

        {
                switch($meta) {
                case 'C': return 'VARCHAR';
                case 'XL': return 'VARCHAR(32000)'; 
                case 'X': return 'VARCHAR(4000)'; 
                
                case 'C2': return 'VARCHAR'; // up to 32K
                case 'X2': return 'VARCHAR(4000)';
                
                case 'B': return 'BLOB';
                        
                case 'D': return 'DATE';
                case 'TS':
                case 'T': return 'TIMESTAMP';
                
                case 'L': return 'SMALLINT';
                case 'I': return 'INTEGER';
                case 'I1': return 'SMALLINT';
                case 'I2': return 'SMALLINT';
                case 'I4': return 'INTEGER';
                case 'I8': return 'INTEGER';
                
                case 'F': return 'DOUBLE PRECISION';
                case 'N': return 'DECIMAL';
                default:
                        return $meta;
                }
        }

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: