pull/1203/head
morpheus65535 4 years ago
parent a5085e23d6
commit 757f23a43a

@ -128,10 +128,18 @@ def db_upgrade():
for column in columnToAdd:
try:
# Check if column already exist in table
columns_dict = database.execute('''PRAGMA table_info('{0}')'''.format(column[0]))
columns_names_list = [x['name'] for x in columns_dict]
if column[1] in columns_names_list:
continue
# Creating the missing column
if len(column) == 3:
database.execute('''ALTER TABLE {0} ADD COLUMN "{1}" "{2}"'''.format(column[0], column[1], column[2]))
else:
database.execute('''ALTER TABLE {0} ADD COLUMN "{1}" "{2}" DEFAULT "{3}"'''.format(column[0], column[1], column[2], column[3]))
logging.debug('BAZARR Database upgrade process added column {0} to table {1}.'.format(column[1], column[0]))
except:
pass

@ -120,7 +120,7 @@ class Sqlite3Worker(threading.Thread):
query: A sql query with ? placeholders for values.
values: A tuple of values to replace "?" in query.
"""
if query.lower().strip().startswith("select"):
if query.lower().strip().startswith(("select", "pragma")):
try:
self.sqlite3_cursor.execute(query, values)
if only_one:
@ -205,7 +205,7 @@ class Sqlite3Worker(threading.Thread):
token = str(uuid.uuid4())
# If it's a select we queue it up with a token to mark the results
# into the output queue so we know what results are ours.
if query.lower().strip().startswith(("select", "insert", "update", "delete")):
if query.lower().strip().startswith(("select", "insert", "update", "delete", "pragma")):
self.sql_queue.put((token, query, values, only_one, execute_many), timeout=5)
return self.query_results(token)
else:

Loading…
Cancel
Save