SQL Server kann Methoden am Datum nicht aufrufen
Ich habe eine DATETIME-Spalte in einer SQL Server 2008-Tabelle mit dem Namen ShiftDate. Ich möchte dies in eine DATE-Spalte in einer Abfrage konvertieren:
SELECT ID, ScheduleID, ShiftDate, CONVERT(DATE, ShiftDate) AS ProductionDate
FROM dbo.ScheduleResults
Ich bearbeite diese Abfrage in SSMS. Wenn ich die Abfrage in einem Standard-Abfragefenster ausführe, werden keine Fehler angezeigt. Wenn ich dies im Fenster "Ansichtseditor" ausführe, wird die Fehlermeldung "Methoden können am Datum nicht aufgerufen werden" angezeigt.
Ich habe die CAST-Methode ausprobiert, aber es wird der gleiche Fehler angezeigt.
SELECT ID, ScheduleID, ShiftDate, CAST(ShiftDate AS DATE) AS ProductionDate
FROM dbo.ScheduleResults
Die vollständige Fehlermeldung lautet:
Executed SQL statement: SELECT ID, ScheduleID, ShiftDate, CAST(ShiftDate as DATE).ToString() AS ProductionDate FROM dbo.ScheduleResults
Error Source: .Net SqlClient Data Provider
Error Message: Cannot call methods on date.
Ich bin geneigt zu glauben, dass dies ein Fehler in SSMS ist, aber ich würde gerne ein Feedback von StackOverflow-Leuten dazu erhalten, wie eine datetime-Spalte in ein Datum konvertiert wird. Ich kann es leicht in eine Zeichenfolgenspalte konvertieren, aber es ist nicht ideal, da Excel es nicht als Datum ansieht.