Mailinglisten-Archive |
Rehigh nochmals,
> ----------
> Von: Gregor Dorfbauer[SMTP:gregor.dorfbauer_(at)_aon.at]
>
> Gloss Mathias wrote:
>
> > select id, titel, substr(inhalt,21*80, 40*80) from tabelle
> >
> das funktioniert auch einigermaßen mit SSH direkt in der DB. Wenn ich
> das Ergebnis mit PHP abrufe, kommt überall der richtige inhalt, nur bei
> der PAGE-Spalte, die als longtext definiert ist, kommt keine ausgabe ;((
>
Strange.
Aber das Verfahren an sich erscheint mir doch etwas
unelegant. Wenn du mal 1000 Zeilen bei einem Datensatz
hattest, und 500 löscht, dann bleibt der Platz für die
gelöschten Zeilen immer noch in der DB, weil kleiner
werden die Tabellen nicht automatisch ---> Deine Tabelle
fragmentiert....
Unser SAP-System speichert Daten und Texte etwas anderst.
Für dein Bsp wäre folgendes zu überlegen:
Du speicherst in einer Tabelle folgendes:
Tabelle content:
id | title
Tabelle zeilen:
id | content_id | zeilen_nr | inhalt
Wobei content_id die zugehoerige ID aus der Tabelle content
ist. inhalt hat die länge CHAR(80).
Wenn du noch einen Zusammengesetzten Schlüssel aus den Spalten
(content_id, zeilen_nr) machst, kannst du schnell die zum content
gehörenden Zeilen abfragen:
select inhalt from zeilen where (content_id=1 and zeilen_nr between 21 and
40
> $query = sprintf("SELECT ID, TITLE, SUBSTRING(PAGE, 21*80, 40*80) from
> content where ID='1';");
>
hmmmm, irgendwie macht das kein Sinn hier, oder war das nur ein Test ?
Grüße, Mathias
php::bar PHP Wiki - Listenarchive