Changeset 6230
- Timestamp:
- 09/14/07 17:07:54 (10 months ago)
- Files:
-
- django/trunk/django/db/backends/oracle/base.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/db/backends/oracle/base.py
r6218 r6230 355 355 table_name = sequence_info['table'] 356 356 seq_name = get_sequence_name(table_name) 357 query = _get_sequence_reset_sql() % {'sequence': seq_name, 'table': self.quote_name(table_name)} 357 column_name = self.quote_name(sequence_info['column'] or 'id') 358 query = _get_sequence_reset_sql() % {'sequence': seq_name, 359 'table': self.quote_name(table_name), 360 'column': column_name} 358 361 sql.append(query) 359 362 return sql … … 369 372 if isinstance(f, models.AutoField): 370 373 sequence_name = get_sequence_name(model._meta.db_table) 371 output.append(query % {'sequence':sequence_name, 372 'table':model._meta.db_table}) 374 column_name = self.quote_name(f.db_column or f.name) 375 output.append(query % {'sequence': sequence_name, 376 'table': model._meta.db_table, 377 'column': column_name}) 373 378 break # Only one AutoField is allowed per model, so don't bother continuing. 374 379 for f in model._meta.many_to_many: 375 380 sequence_name = get_sequence_name(f.m2m_db_table()) 376 output.append(query % {'sequence':sequence_name, 377 'table':f.m2m_db_table()}) 381 output.append(query % {'sequence': sequence_name, 382 'table': f.m2m_db_table(), 383 'column': self.quote_name('id')}) 378 384 return output 379 385 … … 508 514 BEGIN 509 515 LOCK TABLE %(table)s IN SHARE MODE; 510 SELECT NVL(MAX( id), 0) INTO startvalue FROM %(table)s;516 SELECT NVL(MAX(%(column)s), 0) INTO startvalue FROM %(table)s; 511 517 SELECT %(sequence)s.nextval INTO cval FROM dual; 512 518 cval := startvalue - cval;
