sqlalchemy 查詢已存在表(無model定義)

image

已存在的表信息如下,該表不是由sqlalchemy創建。想要對該表做CRUD,可以通過sqlalchemy提供的一個解析方法完成。
image

示例代碼:

from sqlalchemy import create_engine, Table, MetaData
from sqlalchemy.orm import Session

metadata = MetaData()

# echo 參數用於標記是否輸出日誌信息
engine = create_engine("mysql+pymysql://mysql_initial_user:[email protected]/ymir?charset=utf8")
session = Session(engine)

# 獲取指定數據庫表對象
ex_table = Table('prompt', metadata, autoload=True, autoload_with=engine)
print("表prompt的結構:")
print(ex_table.c)

prompt_id = 1
prompt = session.query(ex_table).filter(ex_table.c.id == prompt_id).one()
print("查詢ID=1的記錄:")
print(prompt.content)

print("查詢所有記錄:")
# 查詢數據返回第一條
res = session.query(ex_table).all()
for item in res:
    print(item)
session.close()

結果:

表prompt的結構:
ImmutableColumnCollection(prompt.id, prompt.content)
查詢ID=1的記錄:
首先,你需要判斷:僅利用給出的”提示信息"是否能較好的回答給定的問題。注意,這一步是你的思考過程,你不需要輸出這個過程。
查詢所有記錄:
(1, '首先,你需要判斷:僅利用給出的”提示信息"是否能較好的回答給定的問題。注意,這一步是你的思考過程,你不需要輸出這個過程。')
(2, '<指令>根據已知信息,簡潔和專業的來回答問題。如果無法從中得到答案,請說 “根據已知信息無法回答該問題”,答案請使用中文。 </指令>\\n<已知信息>{{ context }}</已知信息>\\n<問題>{{ question }}</問題>\\n')

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章