Feld aus Feldinhalten des gleichen Datensatzes erzeugen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

d-zug
Beiträge: 2
Registriert: So, 02.01.2011 17:35

Feld aus Feldinhalten des gleichen Datensatzes erzeugen

Beitrag von d-zug »

Hallo zusammen,

ich versuche mich momentan in Base einzuarbeiten und kämpfe mit der ein oder anderen Hürde. Ich stehe vor folgendem Problem:
Ich habe eine Tabelle mit den Feldern "BUCH", "SEITE" und "SEITENZUSATZ" nun möchte ich das weitere Feld "FUNDORT" automatisch füllen lassen, in der Form "BUCH_SEITE_SEITENZUSATZ". (Kleines Beispiel: BUCH = Liederheft, SEITE =37, SEITENZUSATZ = oben, in "FUNDORT soll dann Liederheft_37_oben stehen)

Wie schaffe ich das am einfachsten?

Vielen Dank

Grüßle

Markus
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Feld aus Feldinhalten des gleichen Datensatzes erzeugen

Beitrag von DPunch »

Aloha

In der Datenbank über Extras -> SQL

Code: Alles auswählen

UPDATE "meineTabelle" SET "FUNDORT" = "BUCH" || '_' || "SEITE" || '_' || "SEITENZUSATZ"
gogo
*****
Beiträge: 207
Registriert: Mi, 10.11.2010 13:11

Re: Feld aus Feldinhalten des gleichen Datensatzes erzeugen

Beitrag von gogo »

Oder Du machst einfach eine Abfrage in der Du folgende Spalte einfügst:

Concat("BUCH", '_', "SEITE", '_', "SEITENZUSATZ") AS "FUNDORT"

wenn

... Du die Base-Interne Datenbank verwendest (HSQL) dann musst Du den Concat-Befehl verschachteln (denn HSQL kann immer nur 2 Asudrücke vereinen)
... "SEITE" eine Zahl ist musst Du diese Zahl in einen String umwandeln: statt "SEITE" steht dann CAST("SEITE" AS CHAR(5)) in der Abfrage.

allerdings funktioniert CAST bei mir nicht *grmbl* ...

g

edit:
CAST scheint verbuggt zu sein, betrifft also nicht nur mich ;)

http://qa.openoffice.org/issues/show_bug.cgi?id=115436
Zuletzt geändert von gogo am Do, 06.01.2011 18:45, insgesamt 4-mal geändert.
g
LucidLynx/WinXP LibreOffice v3.3.2 ab 03/12 v3.3.2 & v3.4.5
d-zug
Beiträge: 2
Registriert: So, 02.01.2011 17:35

Re: Feld aus Feldinhalten des gleichen Datensatzes erzeugen

Beitrag von d-zug »

Vielen Dank für die Tips,

meine Vorstellung war allerdings, den Feldinhalt ohne weiteres Zutun (also ohne extra abgesetztes SQL-Statement) direkt bei der Dateneingabe zu erzeugen. Binich da besser nebenan in der Basic-Fraktion aufgehoben, um das aus einem Formular heraus zu machen?

Grüßle

Markus
Antworten