feldtyp nachträglich ändern

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

darkreeper
Beiträge: 1
Registriert: Mi, 16.08.2006 11:42

feldtyp nachträglich ändern

Beitrag von darkreeper »

hallo,

habe da ein kleines problem. hab eine datenbank erstellt und mehrere tabellen angelegt.
hier nun mein problem. beim entwurf der tabellen ist mir im nachhinein aufgefallen, dass der feldtyp nicht so optimal gewählt ist. wenn ich nun den feldtyp, sagen wir mal als beispiel von text auf int änder und speichern will, motzt er rum, dass er den wert nicht ändern kann und fragt, ob er stattdessen das feld löschen soll und geändeert und neu ans ende hängen soll.
da ist nun das problem. wenn ich dem zustimme, dann löscht er mir sämtliche daten des feldes...
gibt es eine möglichkeit, dass er einfach nur den feldtyp ändert, ohne das feld löschen zu wollen ?
wenn das feld als primärschlüssel deklariert wurde funktioniert es komischerweise.

hoffe, die formulierung meines problems ist klar.

vielen dank schon mal

darkreeper
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey darkreeper,
da ist nun das problem. wenn ich dem zustimme, dann löscht er mir sämtliche daten des feldes...
gibt es eine möglichkeit, dass er einfach nur den feldtyp ändert, ohne das feld löschen zu wollen ?
Leider nein. Das ist auch verständlich: Feldtypen werden in der Datenbank entsprechend verwaltet und organisiert - und Texte (Strings) sind eben nun mal anders als Zahlen (Integer). Bei gleichen Typen (also bsp unterschiedliche Textfelder) geht es übrigens - aber die Typenkalssen (Text, Zahlen, Boolean...) kannst du nicht wechseln.
Da bleibt nur eins: Neue Spalte einfügen und versuchen, die Daten zu kopieren - wobei der Weg von Text nach Integer so auch nicht funktioniert. Da wirst du wohl Zwischenschritte (z.B. über Calc-Tabelle - und dort mit Formeln arbeiten) einfügen müssen.
wenn das feld als primärschlüssel deklariert wurde funktioniert es komischerweise.
Mit Sicherheit nicht - bei gleichen Voraussetzungen. Der Primärschlüssel ist normalerweise ein Integer-Wertfeld, sonst geht bsp das "Autoincrement" nicht. War es vorher eine Texctspalte, so kannst du die auch nicht umwandeln. Da lagen sicherlich andere Bedingungen vor.

Im Übrigen: Solange noch keine Daten "drin" sind, kannst du die Definition der Spalte beliebig ändern - alle Aussagen oben beziehen sich nur auf den Fall, dass bereits Daten drin sind!

Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
riedlka1
*
Beiträge: 12
Registriert: Fr, 31.03.2006 09:57

nachträglich Feldtypen ändern

Beitrag von riedlka1 »

Probiers mal mit kopieren und dann unter anderem Namen speichern, da wirst Du aufgefordert die ganzen Felder mit auswählbaren Definition zu übernehmen, dabei kannst Du den Datentyp wählen. Damit ist es evtl. möglich den Datentyp zu ändern, wenn der Datentyp nicht paßt, kommt eine Fehlermeldung, ein Umweg über eine Calc Tabelle ist auch möglich. Aufpassen, bei Textfeldern deren Länge zu kurz gewählt wird fallen heraus - es fehlen dann ganze Datensätze .....

mfGr. Karl
Antworten