Benutzer mit den meisten Antworten
Datetime2(0) in Date ändern und die ORDINAL_POSITION anpassen

Frage
-
Hallo
Ich möchte in mehreren leeren mssql Tabellen Datentypen ändern (zb. Datetime2(0) in Date)
wenn ich es soweit richtig verstanden habe geht es eigentlich nur wenn ich die Original Spalte lösche und eine neue anlege.
Bekomme ich soweit auch hin per SQL
nun möchte ich gerne das das Feld die Original ORDINAL_POSITION wieder bekommt
wie kann ich das per SQL erledigen? - geht das überhaupt oder muss ich in dem falle die Tabellen neu aufbauen
Antworten
-
Funktioniert das ändern nicht mit Hilfe von ALTER TABLE und ALTER COLUMN?
ALTER TABLE <tabellenname> ALTER COLUMN <name_der_spalte> date() NULL
Wenn nicht, dann würde ich mit Drop and Create die Tabelle wieder neu aufbauen, wenn sie denn leer ist.
Servus
GPOs: http://www.gruppenrichtlinien.de/
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
- Bearbeitet Winfried.Sonntag Mittwoch, 23. Oktober 2013 17:14 ....
- Als Antwort vorgeschlagen Andreas.WolterMicrosoft employee Mittwoch, 23. Oktober 2013 18:02
- Als Antwort markiert MCDPone Donnerstag, 24. Oktober 2013 06:37
Alle Antworten
-
Funktioniert das ändern nicht mit Hilfe von ALTER TABLE und ALTER COLUMN?
ALTER TABLE <tabellenname> ALTER COLUMN <name_der_spalte> date() NULL
Wenn nicht, dann würde ich mit Drop and Create die Tabelle wieder neu aufbauen, wenn sie denn leer ist.
Servus
GPOs: http://www.gruppenrichtlinien.de/
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
- Bearbeitet Winfried.Sonntag Mittwoch, 23. Oktober 2013 17:14 ....
- Als Antwort vorgeschlagen Andreas.WolterMicrosoft employee Mittwoch, 23. Oktober 2013 18:02
- Als Antwort markiert MCDPone Donnerstag, 24. Oktober 2013 06:37
-
Hallo Michael,
den Datentyp kannst Du wie Winfried schreibt über ALTER TABLE ändern - siehe Voraussetzungen und Limitationen dort.
Die Reihenfolge jedoch ist nur durch ein Neuerstellen der Tabelle zu verändern. Der einzige Fall, in dem die Reihenfolge wichtig (ausgen. ästhetischer Gründe), ist die Verwendung "*" in SELECT Anweisungen.
Das sollte man in produktivem Code vermeiden und immer die Spaltenliste angeben, so werden Änderungen des Tabellenaufbaus nicht zum Problem für verarbeitenden Code.
Gruß Elmar