fix(db): 修复数据库迁移中列和索引的创建逻辑

- 增强了添加列时对默认值的处理,以兼容不同数据库方言(例如 SQLite 的布尔值)。
- 切换到更标准的 `index.create()` 方法来创建索引,提高了稳定性。
- 调整了启动顺序,确保数据库在主系统之前完成初始化,以防止竞争条件。
This commit is contained in:
minecraft1024a
2025-09-24 13:46:44 +08:00
parent ae738ef8cb
commit 8ff4687670
3 changed files with 30 additions and 23 deletions

4
bot.py
View File

@@ -229,10 +229,10 @@ if __name__ == "__main__":
asyncio.set_event_loop(loop)
try:
# 执行初始化和任务调度
loop.run_until_complete(main_system.initialize())
# 异步初始化数据库表结构
loop.run_until_complete(maibot.initialize_database_async())
# 执行初始化和任务调度
loop.run_until_complete(main_system.initialize())
initialize_lpmm_knowledge()
# Schedule tasks returns a future that runs forever.
# We can run console_input_loop concurrently.