Frage stellen
0

Base: Abfragen mit mehreren Zeilen in einer Zelle

gefragt 2016-10-29 15:09:52 +0200

kr Gravatar-Bild

Hallo

ich habe in Base eine Tabelle erstellt, die in einigen Zellen Zeilenumbrüche enthält. Jetzt möchte ich eine Abfrage machen, in der die Mehrzeiligkeit erhalten bleibt. Jetzt werden einfach beide Zeilen ohne Lücke in eine Zeile geschrieben.

Gibt es da irgend eine Möglichkeit?

Merci und Gruss Klingsor

Bearbeiten Tags ändern Melden schließen vereinen löschen

Kommentare

Herzlichen Dank euch beiden, nach etwas rumpröbeln hat der Tipp von Robert tatsächlich funktioniert.

kr Gravatar-Bildkr ( 2016-10-31 21:30:26 +0200 )Bearbeiten

2 Antworten

0

geantwortet 2016-10-29 19:51:02 +0200

RobertG Gravatar-Bild

updated 2016-10-29 19:57:51 +0200

Ich habe das gerade einmal getestet. Eine Tabelle mit u.a. einem Memo-Feld, in dem auch Text mit Absätzen enthalten ist. Dazu eine Abfrage erstellt und die Zeilenhöhe entsprechend vergrößert, so dass auch mehrere Zeilen untereinander angezeigt werden können. Die Absätze kommen ganz normal über.

Kannst Du einmal genauer schreiben, wie Du die Abfrage machst? Kombinierst Du z.B. das Feld, in dem Text mit einem Absatz steht, mit einem anderen Feld?

Die Anzeige ohne Lücke ist dann normal, wenn Du einen Zeilenumbruch selbst (z.B. für die Ausgabe als Bericht) erstellst. So etwas geht in Abfragen mit SELECT "Name"||CHAR(13)||CHAR(10)||"Ort" FROM "Tabelle". Das wird dann in der Abfrage direkt hintereinander ausgegeben. Der Bericht macht dann daraus aber einen Umbruch.

Wenn Du jetzt folgendes machst, dann wird auch der Umbruch angezeigt:

SELECT CAST("Name"||CHAR(13)||CHAR(10)||"Ort" AS LONGVARCHAR) AS "Adresse" FROM "Tabelle"

Die Anzeige eines Umbruchs scheint das LONGVARCHAR-Format zu benötigen.

Gruß

Robert

Bearbeiten Melden löschen Link mehr
0

geantwortet 2016-10-29 17:49:19 +0200

Toxitom Gravatar-Bild

Hey Klingsor,

Also, das wird schwierig. Ein Zeilenumbruch wird ja codiert - typischerweise ist das das Zeichen 13. Eine Datenbank kann dieses nicht speichern.. intern läuft das alles über SQL und da dürfen selbstverständlich keine Zeilenumbrüche vorkommen. Insofern werden solche Felder üblicherweise bearbeitet und Zeilenumbrüche maskiert (normalerweise mit /n). Beim wiederauslesen dann übernimmt der Programmierer die Terminologie und wandelt die /n zurück in Zeilenumbrüche.

Nur... das musst Du halt alles selbst programmieren..

Die Standard-Abfrage in Base nuttz eben SQL - und da darf es keine Zeilenumbrüche geben. Also.. mit Bordmitteln sehe ich schwarz das Problem zu lösen.

VG Tom

Bearbeiten Melden löschen Link mehr
Registrieren oder einloggen, um zu antworten

Antwortwerkzeuge

1 Beobachter

Statistik

Gefragt: 2016-10-29 15:09:52 +0200

Angesehen: 282 Mal

Aktualisiert: Oct 29 '16