Spaltenformat nachträglich verändern

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Modano
*
Beiträge: 11
Registriert: Di, 29.03.2011 21:40

Spaltenformat nachträglich verändern

Beitrag von Modano »

Hi Leute,

habe immer noch diverse Probleme mit meiner Datenbank.

Wie kann ich die limitierte Textlänge in einem bestehendem Formular ändern. Wenn ich die Zeichenanzahl in meiner Mastertabelle ändern will, so ist dieses Feld grau hinterlegt und ich kann keine Änderungen vornehmen. Wenn ich eine neue Spalte, mit exakt demselben Namen anlege und die Zeichenanzahl entweder auf 0 (für max) oder z. B. auf 500 setze, übernimmt er das. Dann will ich die alte Spalte löschen um einen Doppeleintrag zu vermeiden, das klappt aber nicht. Wahrscheinlich, weil ich eine bestehende Spalte, in der bereits Daten sind, nicht löschen kann!

Ähnliches Problem habe ich mit dem Format einer bestehenden Spalte. Habe eine Spalte im Zahlenformat. Diese möchte ich auf Textformat ändern, damit Zahlen und Sonderzeichen eingeben kann. Wenn ich das Formular öffne, ist das Feld leer, gebe ich dann z. B. 10/2 oder 10,2 oder 10-2 ein, wird automatisch immer die 0 eingetragen?!

Muss ich das Formular komplett neu erstellen, weil man keine bestehenden Spalten verändern kann?!

Gruß,
Modano
OO Version 3 + Windows XP + MySQL Express 10
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Spaltenformat nachträglich verändern

Beitrag von komma4 »

Modano hat geschrieben:Wie kann ich die limitierte Textlänge in einem bestehendem Formular ändern. Wenn ich die Zeichenanzahl in meiner Mastertabelle ändern will,
Wie jetzt: Im Formular oder in der Defintion der Datentabelle ändern?
Beides ist hier (bei einer HSQLDB) problemlos möglich.

Modano hat geschrieben: Habe eine Spalte im Zahlenformat. Diese möchte ich auf Textformat ändern, damit Zahlen und Sonderzeichen eingeben kann.
Auch das geht hier:

Tabellendefinition von Integer auf Zeichen CHAR(fix) 50 geändert, im Formularentwurf das Feld (re.Maustaste>Ersetzen durch...>Textfeld) eingestellt... und schon kann ich Text eingeben.


Und bitte: bei Fragen immer OOo Version, Betriebssystem und Datenbank angeben!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Modano
*
Beiträge: 11
Registriert: Di, 29.03.2011 21:40

Re: Spaltenformat nachträglich verändern

Beitrag von Modano »

Ich habe beides versucht, sowohl im Formular, als auch in der Datenbank Tabelle an sich!

In der Datenbank Tabelle sehe ich ja das Feld der Zeichenlänge, das ich verändern möchte, nur ist das eben grau hinterlegt und ich kann nichts ändern!

Im Formularentwurf über "ersetzen durch" werde ich heute abend mal probieren! Melde mich dann wieder.
OO Version 3 + Windows XP + MySQL Express 10
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Spaltenformat nachträglich verändern

Beitrag von F3K Total »

Hallo, du kannst es ja mal unter Extras/SQL mit folgendem SQL-Befehl versuchen:

Code: Alles auswählen

alter Table "Tabelle1" alter column "Spalte1"  VARCHAR (100)
um z.B. die Länge auf 100 einzustellen.

Gruß R
Modano
*
Beiträge: 11
Registriert: Di, 29.03.2011 21:40

Re: Spaltenformat nachträglich verändern

Beitrag von Modano »

@F3K: Deinen Tipp werde ich Morgen mal ausprobieren

Zum Formatändern noch was:
Habe in der Tabelle mit ca. 2500 Datensätzen schon bei einigen Daten hinterlegt. Kann es vl. daran liegen, dass ich die Formate nicht mehr ändern kann.

Wenn ich z. B. an meinem Rechner zuhause im Formular das Texfeld auf Kombinationsfeld ändere, dann kann ich auch diese Kombi "10-2 o 10,2" eingeben. Mache ich das im Formular das auf meine SQL Datenbank zugreift, sehe ich nach der Eingabe "10-2" nur die 10?! Trotzdem ich es in ein Kombinationsfeld geändert habe!
OO Version 3 + Windows XP + MySQL Express 10
Antworten