2017-02-24 8 views
0

Ich habe mehrere Tabellen erstellt und das Format ist in Datum/Uhrzeit oder Datum. Allerdings muss ich sie in nvarchar ändern. So wie ich es sehe, muss ich alle Tabellen löschen, den Datentyp ändern und alles neu erstellen. Gibt es eine Möglichkeit, den Datentyp automatisch zu ändern?Konvertieren von Datum/Datum in NVarchar Format in SQL

+5

Warum? Möchten Sie keine Daten mehr speichern? Wenn die Spalte Datumsangaben enthält, behalten Sie den Datumsdatentyp bei. Wenn die Spalte etwas anderes als Daten speichert, ist Ihr Modell korrekt? – HoneyBadger

+2

Schreckliche, schreckliche Idee und ist gegen alle Logik. Bewahren Sie sie als DATETIME auf und verwenden Sie ein Format oder eine Konvertierungsfunktion, um sie wie gewünscht anzuzeigen. Wenn Sie den Datentyp in varchar ändern, müssen Sie ihn jedes Mal wieder in DATETIME konvertieren, wenn Sie ORDER BY-, DATE- oder TIME-Funktionen ausführen müssen. Sparen Sie sich die Kopfschmerzen – scsimon

Antwort

0

Anstelle von getdate bitte Ihre Spalte platzieren und

SELECT CONVERT(nvarchar(10), getdate(), 103) 
0

versuchen Wenn die Spalten versehentlich DATETIME Spalten sein gesetzt wurden, und Sie wollen, dass ihre Art ändern, das ist kein Problem:

ALTER TABLE myTable ALTER COLUMN myColumn NVARCHAR(55); 

Aber wie andere gesagt haben, wenn die Tabellen bereits Daten haben und wenn diese Spalten eigentlich Werte speichern sollen, sollten Sie ernsthaft darüber nachdenken, dies zu tun.

Verwandte Themen