Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hallo Jochen,

Verständnis- bzw. Klärungsfrage:

Vorgabe für ein Feld in einer Tabelle mit folgende Einstellungen:
Feldtyp "Text [VARCHAR]"
Länge: 50

Was passiert mit den Leerzeichen für folgende Einträge:

"Base" -> vier Buchstaben und keine Leerzeichen.

"VW AG" -> vier Buchstaben und ein (1) Leerzeichen zwischen "VW" und
"AG"; ansonsten keine Leerzeichen.

"The document foundation" -> 21 Buchstaben und insgesamt zwei
Leerzeichen - ein Leerzeichen zwischen "The" und "document" sowie ein
Leerzeichen zwischen "document" und "foundation"; ansonsten keine
Leerzeichen.

Wenn das so wäre, würde mich interessieren, wie Base erkennt, dass der
Eintrag einmal ein, einmal zwei und einmal drei Wörter enthält und
konsequent immer die rechten überflüssigen Leerzeichen entfernt.

UPDATE "Tabellenname" SET "Feldname" = RTRIM("Feldname")

entfernt alle nicht Leerzeichen rechts von dem enthaltenen Text/Zahl. Es
wird also einfach nur hinten abgeschnitten, nicht in der Mitte.

Das kannst Du testen, indem Du in einem Varchar-Feld die Einträge der
obigen Art machst und dabei konsequent z.B. 5 Leerzeichen hinten
anfügst. Du kannst es genauso gut testen, indem Du ein CHAR-Feld nimmst.
Hier ein Beispiel:

SELECT "Text_fix_25", RTRIM("Text_fix_25"), LENGTH("Text_fix_25"),
LENGTH(RTRIM("Text_fix_25"))  FROM "Tabelle1"

Das Feld heißt "Text_fix_25" - also feste Zeichenbreite, 25 Zeichen auf
jeden Fall, Rest aufgefüllt mit Leerzeichen. Die 2. Spalte zeigt den
gleichen Inhalt - die Leerzeichen kannst Du ja nicht sehen, höchstens
daran erkennen, wenn Du in die jeweilige Zelle mit dem Cursor gehst. Die
3. Spalte zeigt für alle Felder, in denen etwas steht, '25' an. Die 4.
Spalte zeigt die Breite des tatsächlichen Textes abzüglich der
Leerzeichen rechts an. Hast Du z.B. in einem Feld "1 2 3" stehen, so
gibt Spalte 3 brav '25' aus, Spalte 4 hingegen '5' (3 Ziffern und zwei
Leerzeichen zwischen den Ziffern).

Was ist, wenn ein "Wort" eine Zahl ist?
Was ist, wenn ein "Wort" nur einen Buchstaben enthält (wie z.B. die
Adresse "Fantasiestrasse 1" oder den Text "I´m a boy")?

Kannst Du alles mit der obigen Abfrage testen.
Ich habe mir dafür eine Test-Datenbank angelegt. Da kann ich dann eben
ein Feld zu einer Tabelle hinzufügen und Funktionen ausprobieren. Die
Funktionen stehen alle im Handbuch/Anhang.

Gruß

Robert

-- 
Informationen zum Abmelden: E-Mail an users+help@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.