home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2785 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  1.5 KB  |  40 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4.  
  5. def _iterdump(connection):
  6.     cu = connection.cursor()
  7.     yield 'BEGIN TRANSACTION;'
  8.     q = "\n        SELECT name, type, sql\n        FROM sqlite_master\n            WHERE sql NOT NULL AND\n            type == 'table'\n        "
  9.     schema_res = cu.execute(q)
  10.     for table_name, type, sql in schema_res.fetchall():
  11.         if table_name == 'sqlite_sequence':
  12.             yield 'DELETE FROM sqlite_sequence;'
  13.         elif table_name == 'sqlite_stat1':
  14.             yield 'ANALYZE sqlite_master;'
  15.         elif table_name.startswith('sqlite_'):
  16.             continue
  17.         else:
  18.             yield '%s;' % sql
  19.         res = cu.execute("PRAGMA table_info('%s')" % table_name)
  20.         column_names = [ str(table_info[1]) for table_info in res.fetchall() ]
  21.         q = 'SELECT \'INSERT INTO "%(tbl_name)s" VALUES('
  22.         [] += []([ "'||quote(" + col + ")||'" for col in column_names ])
  23.         q += ")' FROM '%(tbl_name)s'"
  24.         query_res = cu.execute(q % {
  25.             'tbl_name': table_name })
  26.         for row in query_res:
  27.             yield '%s;' % row[0]
  28.             ','.join
  29.         
  30.     
  31.     q = "\n        SELECT name, type, sql\n        FROM sqlite_master\n            WHERE sql NOT NULL AND\n            type IN ('index', 'trigger', 'view')\n        "
  32.     schema_res = cu.execute(q)
  33.     for name, type, sql in schema_res.fetchall():
  34.         yield '%s;' % sql
  35.         q
  36.     
  37.     yield 'COMMIT;'
  38.     []
  39.  
  40.