/** * Outputs DDL for differences in sequences * @NOTICE note that sequences are created/handled for MSSQL by mssql10_bit_table * * @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 (!mssql10_schema::contains_sequence($new_schema, $sequence['name'])) { $ofs->write(mssql10_bit_table::get_drop_sql($old_schema, $sequence) . "\n"); } } } // Add new sequences foreach (dbx::get_sequences($new_schema) as $sequence) { if ($old_schema == NULL || !mssql10_schema::contains_sequence($old_schema, $sequence['name'])) { $ofs->write(mssql10_bit_table::get_creation_sql($new_schema, $sequence) . "\n"); } } // Alter modified sequences self::add_modified_sequences($ofs, $old_schema, $new_schema); }