function CreateTableSQL($tabname, $flds, $tableoptions = false) { $sql = ADODB_DataDict::CreateTableSQL($tabname, $flds, $tableoptions); if (7.3 > (double) @$this->serverInfo['version']) { foreach ($flds as $fld) { $fld = _array_change_key_case($fld); $isAutoInc = false; foreach ($fld as $attr => $v) { switch ($attr) { case 'AUTOINCREMENT': case 'AUTO': $isAutoInc = true; break; case 'NAME': $fname = $v; break; } } if (isset($fname) && $isAutoInc) { // This field is an AUTOINCREMENT. Create a sequence // for it. $sequenceName = $this->makeObjectName($tabname, $fname, 'seq'); array_unshift($sql, "CREATE SEQUENCE {$sequenceName}"); array_push($sql, "ALTER TABLE {$tabname} ALTER COLUMN {$fname} SET DEFAULT nextval('{$sequenceName}')"); } } } return $sql; }