20250819corp

This commit is contained in:
2025-09-19 16:47:15 +08:00
parent fc5fb355b4
commit b0e8a68204
12 changed files with 1148 additions and 809 deletions
+57 -29
View File
@@ -1,41 +1,69 @@
import sqlite3
# 导入数据库工具
from db_utils import get_db_connection, close_db_connection
# 连接到数据库并验证users表结构
def verify_users_table():
# 验证数据库结构是否完整
def verify_database_structure():
try:
# 连接数据库
conn = sqlite3.connect('car_info.db')
conn = get_db_connection()
cursor = conn.cursor()
# 检查users表的当前结构
print("验证users表结构:")
cursor.execute("PRAGMA table_info(users)")
columns = cursor.fetchall()
for column in columns:
print(f"字段名: {column[1]}, 类型: {column[2]}, 是否可空: {column[3]}")
# 需要检查的表
tables_to_check = ['users', 'query_records']
verification_results = []
# 检查admin用户的信息
print("\n验证admin用户信息:")
cursor.execute("SELECT id, username, name, phone, department FROM users WHERE username = ?", ('admin',))
admin_user = cursor.fetchone()
if admin_user:
print(f"ID: {admin_user[0]}")
print(f"用户名: {admin_user[1]}")
print(f"姓名: {admin_user[2]}")
print(f"电话: {admin_user[3]}")
print(f"部门: {admin_user[4]}")
else:
print("未找到admin用户")
for table in tables_to_check:
# 检查表是否存在
cursor.execute("SELECT name FROM sqlite_master WHERE type='table' AND name=?", (table,))
table_exists = cursor.fetchone() is not None
if table_exists:
# 检查表的列结构
cursor.execute(f"PRAGMA table_info({table})")
columns = cursor.fetchall()
column_names = [col[1] for col in columns]
verification_results.append({
"table": table,
"exists": True,
"column_count": len(columns),
"columns": column_names
})
else:
verification_results.append({
"table": table,
"exists": False,
"column_count": 0,
"columns": []
})
# 关闭连接
conn.close()
print("\n数据库验证完成")
# 关闭数据库连接
close_db_connection(conn)
# 构造返回结果
all_tables_exist = all(result['exists'] for result in verification_results)
return {
"success": all_tables_exist,
"results": verification_results
}
except Exception as e:
print(f"验证数据库时出错: {str(e)}")
# 确保在异常情况下也关闭连接
if 'conn' in locals():
conn.close()
if 'conn' in locals() and conn:
close_db_connection(conn)
return {
"success": False,
"error": str(e)
}
# 如果直接运行此脚本,则执行验证操作
if __name__ == "__main__":
verify_users_table()
result = verify_database_structure()
print(f"数据库结构验证: {'通过' if result['success'] else '失败'}")
if result['success']:
print("验证详情:")
for table_result in result['results']:
print(f" - 表 {table_result['table']}: 存在,包含 {table_result['column_count']} 个字段")
else:
print(f"错误信息: {result['error']}")