Update database/db_connector.py
Browse files- database/db_connector.py +23 -3
database/db_connector.py
CHANGED
@@ -36,6 +36,26 @@ def get_connection():
|
|
36 |
except Exception as e:
|
37 |
print(f"خطأ في الاتصال بقاعدة البيانات: {e}")
|
38 |
|
39 |
-
# إذا فشل الاتصال، استخدم اتصال قاعدة بيانات
|
40 |
-
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
except Exception as e:
|
37 |
print(f"خطأ في الاتصال بقاعدة البيانات: {e}")
|
38 |
|
39 |
+
# إذا فشل الاتصال، استخدم اتصال قاعدة بيانات SQLite محلية
|
40 |
+
import os
|
41 |
+
import sqlite3
|
42 |
+
|
43 |
+
# إنشاء مجلد البيانات إذا لم يكن موجوداً
|
44 |
+
data_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'data')
|
45 |
+
os.makedirs(data_dir, exist_ok=True)
|
46 |
+
|
47 |
+
# إنشاء اتصال قاعدة بيانات SQLite محلية
|
48 |
+
db_path = os.path.join(data_dir, 'local_db.sqlite')
|
49 |
+
conn = sqlite3.connect(db_path)
|
50 |
+
|
51 |
+
# إعادة محاكاة سلوك اتصال PostgreSQL
|
52 |
+
conn.execute = conn.cursor().execute
|
53 |
+
|
54 |
+
# إضافة وظيفة وهمية للاقتطاع (commit) والإغلاق
|
55 |
+
original_close = conn.close
|
56 |
+
def enhanced_close():
|
57 |
+
conn.commit()
|
58 |
+
original_close()
|
59 |
+
conn.close = enhanced_close
|
60 |
+
|
61 |
+
return conn
|