2010-09-14 2 views
8

Gibt es eine Möglichkeit, einen Datetime-Wert (getdate()) in eine temporäre Tabelle wie folgt erstellt einfügen/aktualisieren:wählen null als Testdate in #temp_table

select id, null as testdate 
into #temp_table 

und dann später Aussage:

update #temp_table 
set testdate=getdate() 

ich Fehler:

cannot convert datetime into int...

Dank.

Antwort

15

Guss die Spalte in der Auswahl in

select id, cast(null as datetime) as testdate 
into #temp_table 
+4

+1: Genau. Standardmäßig ist NULL in SQL Server ein INT; Sie müssen NULL auf den entsprechenden Datentyp CAST/CONVERT umwandeln, damit die OPs arbeiten können. –

+0

+1: Ein weiteres Beispiel dafür, warum ich meine temporären Tabellen immer explizit erstellen möchte. –

Verwandte Themen