v1.8.56: Database Tree Explorer + thread-safe SQL operations
- Add HeidiSQL-style database tree panel (Databases → Tables → Columns) - Lazy loading with ttk.Treeview, context menus, double-click SELECT TOP 1000 - Fix pymysql thread safety: serialize all DB ops with threading.Lock - Use lock.acquire(timeout=10) to prevent deadlocks between tree and query threads - Always reset _executing flag in finally block to prevent stuck queries - Add _ensure_connected() auto-reconnect on broken connections - Add sql_client check_connection() null safety - Add 12 tree-related i18n keys (EN/RU/ZH) - Clean up old releases Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -70,6 +70,8 @@ class SQLClient:
|
||||
log.info("sql_client: disconnected")
|
||||
|
||||
def check_connection(self) -> bool:
|
||||
if self._conn is None:
|
||||
return False
|
||||
try:
|
||||
cur = self._conn.cursor()
|
||||
cur.execute("SELECT 1")
|
||||
|
||||
Reference in New Issue
Block a user