sql >> Databasteknik >  >> RDS >> Sqlserver

Infoga datetime i SQL utan millisekund med hjälp av en parameter

Medan du kunde subtrahera antalet millisekunder som föreslås i kommentarerna, det skulle fortfarande lämna dig med submillisekundervärden. Det kan inte orsaka problem, men det är möjligt att föraren kommer att runda av submillisekundens värde upp till en hel millisekund. Det är renare (IMO) för att undvika att ha något undersekundvärde alls, så att värdet du infogar är detsamma som värdet som lagras. Jag föredrar att använda:

var truncated = new DateTime(dtNow.Year, dtNow.Month, dtNow.Day,
                             dtNow.Hour, dtNow.Minute, dtNow.Second);
// Use truncated as the parameter in your command

På så sätt kommer det helt klart bara har värden för år/månad/dag/timme/minut/sekund.

Om du kommer på att du gör detta regelbundet kanske du vill skriva en förlängningsmetod så att du kan använda:

var truncated = dtNow.TruncateToSecond();



  1. 3 SQL Server-övervakningsfrågor att ställa när man tar över en DBA-position

  2. Kan inte ansluta till postgres med jdbc i pyspark-skalet

  3. MySQL, Få användarrankning

  4. Ett annat UnicodeEncodeError när du använder pandas-metoden to_sql med MySQL