first commit

This commit is contained in:
Misaka_Company
2026-01-06 15:40:38 +08:00
commit 77b72392a3
9 changed files with 903 additions and 0 deletions

51
check_drivers.py Normal file
View File

@@ -0,0 +1,51 @@
import pyodbc
def check_drivers():
print("正在扫描系统 ODBC 驱动...\n")
try:
drivers = pyodbc.drivers()
except Exception as e:
print(f"❌ 错误: 无法读取驱动列表。原因: {e}")
return
if not drivers:
print("❌ 未找到任何 ODBC 驱动。")
return
print(f"✅ 共发现 {len(drivers)} 个驱动:")
print("=" * 50)
for d in drivers:
print(f"{d}")
print("=" * 50)
print("\n[配置建议]")
# --- 1. 寻找 SQL Server 驱动 ---
# 优先级ODBC Driver 18 > 17 > 13 > Native Client > SQL Server (旧)
sql_candidates = [d for d in drivers if "SQL Server" in d]
best_sql = None
# 简单的版本优先级判断
if any("ODBC Driver 18" in d for d in sql_candidates):
best_sql = "ODBC Driver 18 for SQL Server"
elif any("ODBC Driver 17" in d for d in sql_candidates):
best_sql = "ODBC Driver 17 for SQL Server"
elif any("ODBC Driver 13" in d for d in sql_candidates):
best_sql = "ODBC Driver 13 for SQL Server"
elif sql_candidates:
best_sql = sql_candidates[0] # 随便取一个其他的
if best_sql:
print(f"👉 SQL Server 驱动 (填入 config.py): {{{best_sql}}}")
else:
print("⚠️ 未找到 SQL Server 驱动,请下载安装 'ODBC Driver 17 for SQL Server'")
# --- 2. 寻找 Access 驱动 ---
acc_candidates = [d for d in drivers if "Access Driver" in d]
if acc_candidates:
print(f"👉 Access 驱动 (填入 config.py): {{{acc_candidates[0]}}}")
else:
print("⚠️ 未找到 Access 驱动,请下载安装 'Access Database Engine'")
if __name__ == "__main__":
check_drivers()