Added local module imports for each definition. Improved database exception handling to reduce crashes

This commit is contained in:
Lyncoln
2026-10-26 09:56:19 -04:00
parent ccb7ca1031
commit c820a6169e
+16 -5
View File
@@ -1,9 +1,9 @@
import json
import sqlite3
import tempfile
import os
def buildSave(action, outputs):
import tempfile
if hasattr(action, "savedata"):
save_data = {}
@@ -51,8 +51,11 @@ def loadSave(action, outputs):
return outputs
def saveRow(action, outputs, resolved):
import sqlite3
from contextlib import closing
if hasattr(action, "saverow"):
print("Saverow activated")
#print("Saverow activated")
table = action.saverow["table"]
columns = action.saverow["columns"]
@@ -122,8 +125,14 @@ def saveRow(action, outputs, resolved):
else:
query += f" ON CONFLICT({target}) DO NOTHING"
database.execute(query, tuple(values))
database.commit()
try:
with closing(sqlite3.connect("savedata/rmmanager.db")) as database:
with database:
database.execute(query, tuple(values))
except sqlite3.IntegrityError as error:
print(f"Unable to complete database write during {action.name}: {error}")
return False
#database.execute(
# f"INSERT INTO {table} ({column_names}) VALUES ({placeholders})",
@@ -139,6 +148,8 @@ def saveRow(action, outputs, resolved):
def readRow(action, resolved, outputs):
import sqlite3
result = None
if hasattr(action, "readrow"):
table = action.readrow["table"]