我想在SQL Server中将我的日期时间字段的默认值设置为now
,这是什么?
我试过了NOW()
答案 0 :(得分:8)
MSDN详细回答http://msdn.microsoft.com/en-us/library/ms188751.aspx
这个链接还包括各种方式来获取时间和日期,这有时是人们在问及什么时候才真正想到的日期()
SELECT SYSDATETIME()
,SYSDATETIMEOFFSET()
,SYSUTCDATETIME()
,CURRENT_TIMESTAMP
,GETDATE()
,GETUTCDATE();
/* Returned:
SYSDATETIME() 2007-04-30 13:10:02.0474381
SYSDATETIMEOFFSET()2007-04-30 13:10:02.0474381 -07:00
SYSUTCDATETIME() 2007-04-30 20:10:02.0474381
CURRENT_TIMESTAMP 2007-04-30 13:10:02.047
GETDATE() 2007-04-30 13:10:02.047
GETUTCDATE() 2007-04-30 20:10:02.047
答案 1 :(得分:4)
有几种方法可以做到这一点。
SELECT GETDATE(),
CURRENT_TIMESTAMP, /*ANSI SQL equivalent of GetDate*/
SYSDATETIME() /*2008 - Returns datetime2 with greater precision*/
答案 2 :(得分:2)
修改:这两项功能({fn Now()}, CURRENT_TIMESTAMP
)都已翻译为GETDATE()
。
如果需要,可以使用Now()
中的SQL Server
功能作为ODBC function:
SELECT {fn Now()} -- Current date/time or SQL Server functions GETDATE() / CURRENT_TIMESTAMP (this function is also ODBC function)
,{fn CURDATE()} - Current date
,{fn CURTIME()} - Current time
结果:
----------------------- ---------- ------------------------------
2011-10-15 17:07:39.300 2011-10-15 17:07:39.300
答案 3 :(得分:1)
是GETDATE:
SELECT GETDATE() AS X