/** * Outputs DDL for differences in sequences * * @param $ofs output file pointer * @param $old_schema original schema * @param $new_schema new schema */ public static function diff_sequences($ofs, $old_schema, $new_schema) { // Drop sequences that do not exist in new schema if ($old_schema != null) { foreach (dbx::get_sequences($old_schema) as $sequence) { if (!pgsql8_schema::contains_sequence($new_schema, $sequence['name'])) { $ofs->write(pgsql8_sequence::get_drop_sql($old_schema, $sequence) . "\n"); } } } // Add new sequences foreach (dbx::get_sequences($new_schema) as $sequence) { if ($old_schema == null || !pgsql8_schema::contains_sequence($old_schema, $sequence['name'])) { $ofs->write(pgsql8_sequence::get_creation_sql($new_schema, $sequence) . "\n"); } } // Alter modified sequences self::add_modified_sequences($ofs, $old_schema, $new_schema); }