You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.3 KiB

5 months ago
import os
import platform
from Text2SqlUtil import *
from Text2Sql.PostgreSQLUtil import PostgreSQLUtil
from Text2Sql.SaveToExcel import save_to_excel
if __name__ == "__main__":
vn = DeepSeekVanna()
# 打开CreateTable.sql文件内容
with open("CreateTable.sql", "r", encoding="utf-8") as file:
ddl = file.read()
# 训练数据
vn.train(
ddl=ddl
)
# 流式生成演示
question = "查询小学语文有哪些册,返回册信息的所有相关属性。"
# 获取完整 SQL
sql = vn.generate_sql(question)
print("最终 SQL:\n", sql)
# 执行SQL查询
with PostgreSQLUtil() as db:
sample_data = db.execute_query(sql)
filename = "导出信息.xlsx"
save_to_excel(sample_data, filename)
# 在代码最后添加自动打开逻辑
if platform.system() == "Windows":
try:
full_path = os.path.abspath(filename)
print(f"\n✅ 文件已保存到:{full_path}")
os.startfile(full_path) # 关键代码
except Exception as e:
print(f"\n⚠️ 自动打开失败: {str(e)},请手动打开文件")
else:
print("\n⚠️ 非Windows系统请手动打开文件")