def save_changes(self): db = DBManager(self.filename) table = self.combo.get() db.query("DELETE FROM {}".format(table)) cols = str(self.tree['columns'])[1:-1] columns = "(" + cols + ")" values = '' for i in self.tree.get_children(): vals = str(self.tree.item(i)['values'])[1:-1] values += "(" + vals + "), " query = "INSERT INTO {} {} VALUES {}".format(table, columns, values[:-2]) db.query(query)
def run_sql(self): query = self.entry.get() db = DBManager(self.filename) try: curs = db.query(query) cols = list(map(lambda x: x[0], curs.description)) self.tree_update(curs, cols) except Exception as e: self.error_window = Toplevel(self.master) self.error_window.grab_set() self.error_window.title('Что-то пошло не так :(') self.error_window.minsize(320, 48) self.error_window.resizable(0, 0) label = ttk.Label(self.error_window, text=e) label.pack(side="top", fill="both", padx=5, pady=5) ok = ttk.Button(self.error_window, text='Ок', command=self.error_window.destroy) ok.pack(side="right", padx=5, pady=5)