[python] SqlObject
Lukáš Linhart
almad na include.cz
Pátek Září 29 14:15:18 CEST 2006
E-mail Petr Vaněk ze dne Thursday 28 September 2006 16:08:
> Hezký sváteční den
Hezký předvíkendový den
> v Tutor konferenci jsem objevil zmínku o SqlObject
> http://www.sqlobject.org
>
> O co by mělo jít? Jedná se o moduly, které mapují objekty (tabulky)
> databáze do Python tříd. Hezké.
>
> Zajímalo by mne, estli existuje nějaké reálné využití, a popřípadě jaké s
> tím máte zkušenosti.
Ošklivé až zlé.
> Letmým studiem kódu a zběžným spuštěním mi přijde, že tomu zřejmě
> nerozumím.
> * Jak se to chová v případě nepodporovaných (?) objektů (view,
> procedury...)? Ignoruje to? Jak se ale pak dá s DB pracovat?
Obecně mám ze SQLObject dojem, že Bicking používá RDBMS jen proto, že to po
něm chtějí klienti a má to jako takový rychlejší pickle s vyhledáváním ,)
Nicméně, tohle je prostě obecný tradeoff orm vs práce-přímo-s-daty, tam se moc
nedá svítit.
> * Opravdu to neuvolňuje paměť když už nechci s instancí tabulky pracovat?
Tak tak, ale to je "cache feature"
> * Proč je "ID column" vždycky NUMBER s automatickým inkrementem? Popř. jak
> se toho zbavím?
Nějak se to dá ale je to autorem velmi nedoporučováno.
> * Opravdu to tahá všechna data z DB, když nadefinuju třídu nad tabulkou
> anebo se mi to jenom zdá?
Nezdá.
> * Jak se dostanu k plnému znění DB chyby?
>
> a tak vůbec
Jinak rozhodně než SQLObject, který má i pár jiných chybek (neescapuje column
a table names apod) doporučuju SQLAlchemy - http://www.sqlalchemy.org/
Já musel řešit předtím než alchemy vzniklo, tak jsem si napsal takový vlastní
thin wrapper - http://projects.almad.net/dbclass -, který je ale míň ORM a
víc usnadňovač běžné práce pro web (connection pool, schovává connections a
kurzory, nedává rows jako atributy ale používá .data slovník apod), nicméně
to není tak dovychytané jako tyhle věci + je zatím jenom pro firebird (zatím
jsem nepotřeboval použít jinou db ,))
> zdar a sílu
> petr vaněk
--
Almad
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://www.py.cz/pipermail/python/attachments/20060929/c3764214/attachment.pgp
Další informace o konferenci Python