33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
import psycopg2
|
|
import psycopg2.extensions
|
|
import lybmods.lybcfg as lybcfg
|
|
import lybmods.lybtools as lybtools
|
|
|
|
psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
|
|
psycopg2.extensions.register_type(psycopg2.extensions.UNICODEARRAY)
|
|
conn = psycopg2.connect(database=lybcfg.dbname, user=lybcfg.dbuser, password=lybcfg.dbpass, host=lybcfg.dbhost)
|
|
conn.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT)
|
|
|
|
def create_schema():
|
|
cur = conn.cursor()
|
|
l = [
|
|
(lybcfg.pwd_table_name, lybtools.AUTH_SCHEMA),
|
|
(lybcfg.sess_table_name, lybtools.SESS_SCHEMA),
|
|
(lybcfg.cat_table_name, lybtools.CAT_SCHEMA),
|
|
(lybcfg.doc_table_name, lybtools.DOC_SCHEMA),
|
|
(lybcfg.bin_table_name, lybtools.BIN_SCHEMA),
|
|
(lybcfg.docbin_table_name, lybtools.DOCBIN_SCHEMA),
|
|
(lybcfg.grpcat_access_table, lybtools.GRPCAT_ACCESS_SCHEMA),
|
|
(lybcfg.grpdoc_access_table, lybtools.GRPDOC_ACCESS_SCHEMA),
|
|
(lybcfg.pwdcat_access_table, lybtools.PWDCAT_ACCESS_SCHEMA),
|
|
(lybcfg.pwddoc_access_table, lybtools.PWDDOC_ACCESS_SCHEMA)
|
|
]
|
|
for k in l:
|
|
try:
|
|
cur.execute('SELECT COUNT(*) FROM %s' % k[0])
|
|
except:
|
|
cur.execute(k[1])
|
|
conn.commit()
|
|
|