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

Attachment: pgpt66yBDTv3s.pgp
Description: PGP signature

_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python

Odpovedet emailem