AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken datentyp eines feldes ändern
Thema durchsuchen
Ansicht
Themen-Optionen

datentyp eines feldes ändern

Ein Thema von khh · begonnen am 14. Dez 2010 · letzter Beitrag vom 15. Dez 2010
Antwort Antwort
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#1

datentyp eines feldes ändern

  Alt 14. Dez 2010, 08:27
Datenbank: firebird • Version: 2.1 • Zugriff über: zeos
hallo zusammen,
ich möchte per script den Datentyp eines Feldes von integer nach decimal ändern.

leider kennt Firebird modify nicht

gibts ne andere Möglichkeit, ausser die Felder neu anzulegen?

Danke Gruss KH
Karl-Heinz
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: datentyp eines feldes ändern

  Alt 14. Dez 2010, 08:34
http://www.ibphoenix.com/main.nfs?a=...60_altercol_fs
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: datentyp eines feldes ändern

  Alt 14. Dez 2010, 08:35
1, Lege eine dummy-Spalte mit neuen Feldtyp an
2, Kopiere mittels Update-Befehl die Daten aus der alten Spalte in den neuen Typ
3, Lösche die alte Spalte
4, Benenne die dummy-Spalte um.

Vor allem mittels 2, kannst du erst mal schauen ob alle Daten fehlerfrei in die neue Spalte kopiert werden können.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#4

AW: datentyp eines feldes ändern

  Alt 14. Dez 2010, 08:39
ich danke euch,
hatte gehofft es geht in einem Schritt

Gruss KHH
Karl-Heinz
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#5

AW: datentyp eines feldes ändern

  Alt 15. Dez 2010, 08:35
INTEGER auf NUMERIC sollte auch in einem Schritt machbar sein, sofern:

- Auf der Spalte keine Abhängigkeiten sind (Constraints, Triggers, Stored Procedures ...)
- Der Ziel NUMERIC Typ eine entsprechend große Ausprägung hat. So wirst du einen BIGINT z.b. in keinen NUMERIC(4,2) unterbringen

Die Syntax hat dir DeddyH über den Link schon gegeben.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: datentyp eines feldes ändern

  Alt 15. Dez 2010, 17:36
Wenn nicht hilft Berhards Lösung auf jeden Fall
Markus Kinzler
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#7

AW: datentyp eines feldes ändern

  Alt 15. Dez 2010, 19:02
Mit dem Unterschied, dass bei einer Tabelle mit vielen Datensätzen (Tabellen mit > 100 Mio. Datensätzen soll es geben) der Server viel mehr beschäftigt ist, als wenn man das Umbenennen direkt, d.h. ohne temporäre Spalte durchbekommt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz