Warum, wenn ich einfügen eines DateTime null, ich habe "0001-01-01" in der SQL Server?

Ich versuche eingefügt werden der Wert null (DateTime) in meiner Datenbank ein Feld eingegeben 'Datum', aber ich bekomme immer eine '0001-01-01'. Ich verstehe nicht, das Feld "null zulassen", und ich weiß nicht warum, ich habe das default-Wert.

Ich bin mit C# asp .net mit MVC (Entity Framework), das ist mein code :

Budget_Synthesis newBS = new Budget_Synthesis
{
    Budget_Code = newBudgetCode,
    Last_Modified_Date = null
};
db.Budget_Synthesis.AddObject(newBS);

Last_Modified_Date eingegeben System.DateTime? also ich weiß nicht, warum Sie dies ändern 'null'.

Wenn ich versuche, um den Wert anzuzeigen, der auf meine Anwendung, die ich bekommen 01/01/0001 00:00:00

Sowie 0001-01-01 mit SSMS

Kann jemand mir erklären, warum ich nicht bekommen kann eine echte 'NULL' ?

Beste Grüße

  • Zeigen Sie Ihren code bitte
  • Sie sind das einfügen eines c# - Wert von null datetime in einen sqldatetime-Feld?
  • Wie wollen Sie einfügen? Diese Angelegenheiten. Viel.
  • Wie sind Sie auf einfügen. Durch eine Anwendung oder sql mgmt studio?
  • Ihre Dosis DateTime null-Werte zulässt?
  • sql server kann nicht sogar store 0001-01-01; der minimale Wert in der sql-server ist der 1. Januar 1753. Wo werden Sie sehen diese 0001-01-01, genau?
  • Vielleicht meinte er datetime2?
  • Sie könnte verwenden Sie sql profiler, um zu sehen, was genau Sie versuchen zu analysieren in der Tabelle
  • ja, es gibt eine Menge "vielleicht" in dieser Frage. Was wir brauchen, ist mehr detail (Tipp Alex! mehr Details bitte!)
  • Re der Letzte edit: Sie zeigen einige code, fügt ein Objekt was aussieht, um ein ORM in irgendeiner Form. Recht; wir sind irgendwo immer... was ORM ist das? Was ist das AddObject ? Wie ist das ganze konfiguriert? Was Sie nicht gesagt haben, uns etwas darüber, wie all dies wird an die Datenbank...
  • Edit ich mit meinem C# - code. Ich seh '0001-01-01' mit dem SQL-Manager und "01/01/0001 00:00:00" wenn ich versuche, die Daten anzeigen, die in meiner app.
  • Sie sollten die Last_Modified_Date zu ermöglichen nullable-Wert
  • Ich benutze Entity Framework, so dass ich nicht wirklich die Details der Anfrage, aber ich habe nicht diese Art von problem vor, ich bekomme immer "null" für jede Art von Daten, außer 'Datum' - Typ. Last_Modified_Date ist wohl zu akzeptieren nullable-Wert, weil es verbunden ist mit meiner DB wo ich überprüft, "null zulassen", mit dem SQL-Manager.
  • "Wenn ich versuche, um den Wert anzuzeigen, der auf meine Anwendung, die ich bekommen..." Was bekommen Sie, wenn Sie die Abfrage in SSMS?
  • Mit SELECT Last_Modified_Date FROM Budget_Synthesis bekomme ich 0001-01-01

InformationsquelleAutor Alex | 2013-05-22
Schreibe einen Kommentar