phpbar.de logo

Mailinglisten-Archive

[php] In Query-Ergebnis keine korrekten Feldnamen?

[php] In Query-Ergebnis keine korrekten Feldnamen?

Oliver Kummerow naklar_(at)_altavista.net
Wed, 25 Aug 1999 13:30:02 +0200


Hallo Kristian,

> Beide Tabellen stehen in einer Master-Detail-Beziehuing zueinander,
> wobei t1_id in t1 Schlüssel und in t2 Fremdschlüssel ist, d.h.

Ja, das ursprüngliche Modell war sogar eine m:n-Relation, also das ganze
doppelt.

> nicht, muß die Datenbank tatsächlich das volle Kreuzprodukt der
> beiden Tabellen errechnen, was zu gigantischen Rechenzeit- und
> Speicheraufwendungen führt.

Stimmt, das ist wichtig. Bei m:n dann die Quadratur des Kreuzprodukts
usw. Key-haltige Spalten immer gleich mit Index, schon bei der
Erstellung.

> darstellt ("select t2.preis * 1.16 as bruttopreis ...") oder die Spalte
> einen voll qualifizierten Namen enthält. Dies ist durch Einschränkungen in
> der MySQL-API bedingt und kann durch PHP nicht korrigiert werden.

Aha. 

> Wie oben erklärt, mußt Du das auch andernfalls, da es durch Schema-
> Änderungen sowieso sein kann, daß Deine Query ungültig wird. Die
> korrekte Antwort auf das Problem ist die Definition eines Query-
> Dictionary in Form eines Hashes oder einer Access-Container-Klasse.

Meine Vermutung, daß mysql die qualifizierten Namen bekanntgibt, php
aber nicht, resultierte aus der Erfahrung mit einem API-basierten Tool,
das Namen in der Form tabelle.feld in den Spalten wiedergibt. Wenn ich
Dich hier richtig verstehe, muß ich aber eher vermuten, daß ein
on-the-fly Hash (oder wie auch immer) erzeugt wurde. Auch nicht blöd.


Mit freundlichen Grüßen,
Oliver Kummerow
email: naklar_(at)_altavista.net



php::bar PHP Wiki   -   Listenarchive