429 |
429 |
WHERE dates.date IS NULL''',
|
430 |
430 |
vars=[first_date, last_date])
|
431 |
431 |
|
432 |
|
def create_table(self, name, columns, inherits=None, comment=None):
|
433 |
|
sql = 'CREATE UNLOGGED TABLE %s' % quote(name)
|
|
432 |
def create_table(self, name, columns, inherits=None, comment=None, unlogged=True):
|
|
433 |
if unlogged:
|
|
434 |
sql = 'CREATE UNLOGGED TABLE %s' % quote(name)
|
|
435 |
else:
|
|
436 |
sql = 'CREATE TABLE %s' % quote(name)
|
434 |
437 |
sql += '(' + ', '.join('%s %s' % (quote(n), t) for n, t in columns) + ')'
|
435 |
438 |
if inherits:
|
436 |
439 |
sql += ' INHERITS (%s)' % quote(inherits)
|
... | ... | |
450 |
453 |
|
451 |
454 |
def create_labeled_table_serial(self, name, comment):
|
452 |
455 |
self.create_table(
|
453 |
|
name, [['id', 'serial primary key'], ['label', 'varchar']], comment=comment)
|
|
456 |
name, [['id', 'serial primary key'], ['label', 'varchar']], comment=comment, unlogged=False)
|
454 |
457 |
|
455 |
458 |
if self.prev_table_exists(name):
|
456 |
459 |
# Insert data from previous table
|
... | ... | |
465 |
468 |
new_fields = [['id', 'serial primary key'], ['ref', 'varchar UNIQUE']] + fields
|
466 |
469 |
self.create_table(name, new_fields, comment=comment)
|
467 |
470 |
|
468 |
|
|
469 |
471 |
def do_referenced_data(self, name, data, result_column, update_column='label'):
|
470 |
472 |
to_insert = []
|
471 |
473 |
|
... | ... | |
503 |
505 |
[
|
504 |
506 |
['id', 'integer primary key'],
|
505 |
507 |
['label', 'varchar']
|
506 |
|
], comment=comment)
|
|
508 |
], comment=comment, unlogged=False)
|
507 |
509 |
|
508 |
510 |
if self.prev_table_exists(name):
|
509 |
511 |
# Insert data from previous table
|
510 |
|
-
|