From 1bc1a0f699372947907a48d3dc77d15a6cf16e79 Mon Sep 17 00:00:00 2001 From: HuangHai <10402852@qq.com> Date: Mon, 17 Mar 2025 11:59:05 +0800 Subject: [PATCH] 'commit' --- AI/Text2Sql/app.py | 8 ++++++-- .../540f67ed-2a38-43ce-bab6-b4826fa4da9c.docx | Bin 0 -> 38496 bytes .../97d01d91-2f58-4d4b-b417-efc9894dce36.xlsx | Bin 0 -> 6440 bytes .../e3f0178c-ad77-438f-81fd-9e2408cf4236.xlsx | Bin 0 -> 6192 bytes 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 AI/Text2Sql/static/docx/540f67ed-2a38-43ce-bab6-b4826fa4da9c.docx create mode 100644 AI/Text2Sql/static/xlsx/97d01d91-2f58-4d4b-b417-efc9894dce36.xlsx create mode 100644 AI/Text2Sql/static/xlsx/e3f0178c-ad77-438f-81fd-9e2408cf4236.xlsx diff --git a/AI/Text2Sql/app.py b/AI/Text2Sql/app.py index 86c33c14..4bad420a 100644 --- a/AI/Text2Sql/app.py +++ b/AI/Text2Sql/app.py @@ -72,6 +72,9 @@ async def get_excel(question_id: str = Form(...), question_str: str = Form(...), if len(question_id) != 36: return {"success": False, "message": "question_id格式错误"} + # 检查此question_id 是不是已存在,存在的不能再次生成,需要全新创建一个新问题ID + if await get_question_by_id(db, question_id): + return {"success": False, "message": "question_id已存在,请重新生成"} common_prompt = ''' 返回的信息要求: 1、行政区划为NULL 或者是空字符的不参加统计 @@ -82,9 +85,10 @@ async def get_excel(question_id: str = Form(...), question_str: str = Form(...), # 获取完整 SQL sql = vn.generate_sql(question) print("生成的查询 SQL:\n", sql) - # 先删除后插入,防止重复插入 - await delete_question(db, question_id) + + # 插入数据 await insert_question(db, question_id, question) + # 检查,如果sql为空,则返回错误信息 if not sql: return {"success": False, "message": "无法生成相应的SQL语句!"} diff --git a/AI/Text2Sql/static/docx/540f67ed-2a38-43ce-bab6-b4826fa4da9c.docx b/AI/Text2Sql/static/docx/540f67ed-2a38-43ce-bab6-b4826fa4da9c.docx new file mode 100644 index 0000000000000000000000000000000000000000..b554b3260160d6e3f4c02dce2fd08d5d7e288469 GIT binary patch literal 38496 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 literal 0 HcmV?d00001 diff --git a/AI/Text2Sql/static/xlsx/97d01d91-2f58-4d4b-b417-efc9894dce36.xlsx b/AI/Text2Sql/static/xlsx/97d01d91-2f58-4d4b-b417-efc9894dce36.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..114cc49ed7ce97f518d728e127ab2bca0240cdbb GIT binary patch literal 6440 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 literal 0 HcmV?d00001 diff --git a/AI/Text2Sql/static/xlsx/e3f0178c-ad77-438f-81fd-9e2408cf4236.xlsx b/AI/Text2Sql/static/xlsx/e3f0178c-ad77-438f-81fd-9e2408cf4236.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..392218310454cc3a86acb17aedff07ac2b02e81d GIT binary patch literal 6192 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