Files
ai-g3sb-backman2.0/backend/schema/__pycache__/models.cpython-312.pyc
T

80 lines
9.0 KiB
Plaintext
Raw Normal View History

2026-04-10 16:52:07 +08:00
Ë
jD×iQãó´—dZddlmZmZddlmZmZmZmZddl m Z eGd„d««Z
eGd„d««Z eGd „d
««Z eGd „d ««Z
y
)u
Schema数�模型定义
é)Ú dataclassÚfield)ÚListÚOptionalÚDictÚAny)Údatetimecój—eZdZUdZeed<eed<dZeeed<dZe ed<dZ
e ed <dZ e ed
<d „Z y) ÚColumnu列字段定义ÚnameÚ data_typeNÚcommentTÚnullableFÚis_primary_keyÚis_foreign_keycó¾—|jrdnd}|jrdnd}|jrd|j›�nd}|j›d|j›|›|›|›�S)NÚNULLzNOT NULLz PKÚú -- Ú )rrrr r
)ÚselfÚnull_strÚpk_strÚ comment_strs úDC:\Users\24019\Desktop\backman\text2sql_agent_camel\schema\models.pyÚ__str__zColumn.__str__s\€Ø!Ÿ]š]‘6°
ˆØ×-Ò-‘°2ˆØ/3¯|ª|˜˜TŸ\™\˜NÑ+Àˆ Ø—)‘)�˜A˜dŸn™nÐ-¨h¨Z¸°xÀ ¸}ÐMÐMó)
Ú__name__Ú
__module__Ú __qualname__Ú__doc__ÚstrÚ__annotations__rrrÚboolrrr©rrr r
sA…áØ
ƒI؃NØ!€GˆX�c‰]Ó!Ø€HˆdÓØ €N�DÓ Ø €N�DÓ óNrr có<—eZdZUdZeeed<eed<eeed<y)Ú
ForeignKeyu 外键关系ÚcolumnsÚ ref_tableÚ ref_columnsN)rrr r!rr"r#r%rrr'r's…áØ
�#‰YÓØƒNØ�c‘Ôrr'có—eZdZUdZeed<dZeeed<ee ¬«Z
e e ed<ee ¬«Z
e eed<ee ¬«Ze eed<dZeeed <ed
eee ffd „«Zed
e efd „«Zdd
ed
efd„Zd
efd„Zy)ÚTableuæ•°æ�®è¡¨å®šä¹‰r Nr©Údefault_factoryr(Ú primary_keysÚ foreign_keysÚ embeddingÚreturncóV—|jD�cic]}|j|“Œc}Scc}w)u!字段å��到Column对象的映射©r(r ©rÚcols rÚ column_dictzTable.column_dict.s(€ð*.¯ªÓ6© #�—‘˜#‘
¨Ñ6Ð6ùÒ6ó�&cóT—|jD�cgc]}|j‘Œc}Scc}w)u所有字段å��列表r4r5s rÚ column_nameszTable.column_names3s$€ð%)§L¢LÓ1¡L˜S�—“ LÑ1Ð1ùÒ1s�%Ú max_columnscó^—d|j›d�g}t|j«|kDr|jd|n |j}g}|D]^}d|j›d|j›�}|jr|dz
}|j
r|d|j
›�z
}|j
|«Œ`|j
dj|««t|j«|kDr+|j
d t|j«|z
›d
�«|j
d «d j|«S)
uÌ
生�紧凑的Schema字符串(用于LLM输入)
Args:
max_columns: 最大字段数,超过时截断
Returns:
紧凑的Schema�述字符串
zTABLE z (Nú ú: ú [PK]rz,
u
-- 还有 u 个字段未显示Ú)r)r Úlenr(r
rrÚappendÚjoin)rr;ÚpartsÚdisplay_columnsÚcol_strsr6Úcol_strs rÚto_compact_stringzTable.to_compact_string8s€ð˜$Ÿ)™)˜ BÐ'Ð(ˆô9<¸D¿L¹LÓ8IÈKÒ8W˜$Ÿ,™, |¨ Ñ4Ð]a×]iÑ]iˆàˆÛ"ˆCؘ3Ÿ8™8˜* B s§}¡} oÐ6ˆGØ×!Ò!ؘ7Ñ"�Ø�{Š{ؘT #§+¡+ Ð/Ñ/�Ø �O‰O˜GÕ $ð
#ð � ‰ �U—Z‘Z Ó)Ô*ä ˆt�|‰|Ó ˜{Ò *Ø �L‰L˜>¬#¨d¯l©lÓ*;¸kÑ*IÐ)JÐJ]Ð^Ô _à
� ‰ �SÔØ�w‰w�u‹~Ðrc óv—|j|j|jD�cgc]<}|j|j|j|j|j
dœ‘Œ>c}|j |jD�cgc]&}|j|j|jdœ‘Œ(c}dœScc}wcc}w)u转æ�¢ä¸ºå­—典格å¼�)r r
rrr)r(r)r*)r rr(r/r0)
r rr(r
rrr/r0r)r*)rr6Úfks rÚto_dictz
Table.to_dictXs»€ð—I‘IØ—|‘|ð Ÿ<š<ó ñ(�Cð
 ŸH™HØ!$§¡Ø"Ÿ{™{Ø #§ ¡ Ø&)×&8Ñ&8ó ð(ñ ð!×-Ñ-ð×+Ò+ó
ñ ,�Bð "Ÿz™zØ!#§¡Ø#%§>¡>óð
,ñ
ñ
ð
ùò ùòs ¥AB1Â+B6 )é)rrr r!r"r#rrrÚlistr(rr r/r0r'r1rÚpropertyrr7r:ÚintrHrKr%rrr,r,#sÁ…áØ
ƒIØ!€GˆX�c‰]Ó!Ù!°$Ô7€GˆT�&‰\Ó7Ù#°DÔ9€L�$�s‘)Ó9Ù%*¸4Ô%@€L�$�zÑ"Ó@à#€Iˆx˜‰}Ó#à
ð7˜T # v +Ñ.ò7óð7ðð2˜d 3™iò2óð2ñ¨Sð¸#óð@
˜ô
rr,có—eZdZUdZeed<ee¬«Ze e
ed<ee j¬«Z
e ed<edeee
ffd„«Zdedee
fd „Zdd
edefd „Zdefd „Zy
)ÚDatabaseSchemau'æ•°æ�®åº“Schema(多个表的集å�ˆï¼‰r r-ÚtablesÚ
created_atr2cóV—|jD�cic]}|j|“Œc}Scc}w)u 表å��å­—å…¸)rRr ©rÚtbls rÚ
table_dictzDatabaseSchema.table_dictzs(€ð*.¯ªÓ5© #�—‘˜#‘
¨Ñ5Ð5ùÒ5r8Ú
table_namecó8—|jj|«S)u获å�–指定表)rWÚget)rrXs rÚ get_tablezDatabaseSchema.get_tables€à�‰×"Ñ" :Ó.Ð.rÚinclude_columnsc ó¶—d|j›d�g}|jdt|j«›d�«|jd«|jD�]ï}|jd|j›�«|jr|jd|j›�«|jdt|j
«›�«|râ|j
rÖ|jd«|j