sql >> Databasteknik >  >> RDS >> Sqlserver

Behåller formatet samtidigt som DateTime-värden överförs till lagrad procedur

En DateTime är en DateTime är en DateTime - det "har" inget (strängorienterat) format när det lagras i SQL Server (det lagras som ett 64-bitars långt). Om du skickar in en parameter till en lagrad procedur som en DateTime redan, du borde må bra! Värdet kommer att lagras av SQL Server utan ändra någon formatering - eftersom den inte har någon formatering kopplad till sig...

Den enda punkten då datumet är representerat i ett givet strängformat är när man tittar på det i SQL Server Management Studio, eller när man konverterar det till ett strängformat i t.ex. din .NET-app.

När du på något sätt behöver skicka in en strängrepresentation till SQL Server (t.ex. för sökning etc.), den som är mest robust och fungerar med alla regional/språkinställning är ISO-8601 datumformat:YYYYMMDD eller alternativt (om du behöver tidsdelen) YYYY-MM-DDTHH:MM:SS (där T i mitten finns en bokstav som skiljer datum- och tidsdelarna åt)



  1. SEPARATOR-nyckelordet fungerar inte korrekt i Hibernate Formula

  2. Returnerar en blob med json

  3. Hur kombinerar man två räkningsfrågor till deras förhållande?

  4. Hur kan vi få 15 minuters tidsintervall