phpbar.de logo

Mailinglisten-Archive

[pear] MDB-Datentyp TEXT - Frage und Wurm im XSL

[pear] MDB-Datentyp TEXT - Frage und Wurm im XSL

Lukas Smith smith at backendmedia.com
Die Jun 10 14:18:22 CEST 2003


> From: pear-admin at phpcenter.de [mailto:pear-admin at phpcenter.de] On
Behalf
> Of Michael Wallner
>
> > -----Original Message-----
> > From: Lukas Smith
> > Sent: Tuesday, June 10, 2003 11:57 AM
> > To: pear at phpcenter.de
> > Subject: RE: [pear] MDB-Datentyp TEXT - Frage und Wurm im XSL
> >
>
> > Das ist ein Fehler in den docs dann (wo steht das?).
>
> Docs @ http://www.backendmedia.com/MDB/docs/datatypes.html#5.1.1 :
> [quote]
> The text data type is available with two options for the length: one
> that is explicitly length limited and another of undefined length that
> should be as large as the database allows.
> [/quote]

ja das ist korrekt.

> > MDB nimmt je nach length einen korrekten native Datentyp.
> > Bei Text wird standardmäßig CHAR genommen wenn keine length
definiert
> > ist und sonst TEXT.
> > Wenn das nicht reicht muss man eventuelle CLOB benutzen.
>
> Hm...
>
> in MDB_mysql gibt es kein getTextDeclaration(), also nehme
> ich an, dass MDB_Common::getTextDeclaration() verwendet wird,
> welches wiederum nur überprüft, ob eine Länge gesetzt wurde.

korrekt

> Wurde "length" gesetzt, wird  CHAR verwendet. Ist nun aber z.B.
> 4096 als "length" gesetzt, bleibt es wirkungslos, da CHAR nur bis
> 255 Zeichen geht.

> MDB_mysql::getClobDeclaration() hingegen handhabt das in Ordnung,
> da es nach dem "length" Attribut den Datentyp wählt.
>
> D.h. braucht man ein Textfeld mit mehr als 255 Zeichen muss
> man auf CLOB ausweichen.

Jein. Man kann auch einfach die length weglassen und dann wird ja
automatisch der größte Datentypen verwendet.

> Ich denke die Docs stiften in diesem Bereich ziemliche Verwirrung?

Na ja die Dokumentation ist da doch korrekt?
Das Problem ist einfach das eine Abstraktion halt oft den kleinsten
gemeinsamen Nenner auswählt. Insbesondere geht MDB derzeit davon aus das
Portabilität im Zentrum steht. Jedoch bringt es doch wenig, wenn
bestimmte Datenmengen einfach einen CLOB in bestimmten Datenbanken
vorrausetzt, jedoch ein text Field benutzt wird. Dann ist die
Abstraktion dahin.

Ich arbeite jedoch gerade daran dies alles zu flexibilisieren.

Gruss,
Lukas


php::bar PHP Wiki   -   Listenarchive