MSSQL中时间戳数据类型介绍(mssql 时间戳 类型)
时间戳是一种在电脑系统中通常用来指定某一时间的数据类型,它的数据类型主要包括datetime2、datetimeoffset、smalldatetime三种,在MSSQL中当我们使用这三种数据类型时需要遵守一些特定的格式规则。
1、datetime2:
datetime2的数据类型的时间戳主要是用来存储某个时间的详细信息,同时它也支持存储时间和日期,跨平台存储的格式是:’YYYYMMDD HH:NN:SS’,这里年是4位数,月和日也是2位数,键入格式是:yyyy-mm-dd hh:mi:ss[.nnn],
比如:
CREATE TABLE TimeStampTable
( ID INT IDENTITY(1, 1) NOT NULL,
CreatedTimeStamp DATETIME2(7) NOT NULL, PRIMARY KEY (ID)
)GO
INSERT INTO TimeStampTable (CreatedTimeStamp)VALUES (GETDATE());
GO
2、datetimeoffset:
datetimeoffset 的数据类型的时间戳主要是用来存储某个时间的详细信息,它将UTC时区的时间参数添加到存储的时间和日期中;跨平台存储格式是:yyyy-mm-dd hh:mm:ss[.nnnnnnn] [+ | -]hh:mi,这里年是4位数,月和日也是2位数,键入格式是:yyyy-mm-dd hh:mi:ss[.nnnnnnn] [+ | -]hh:mi,
比如:
CREATE TABLE TimeStampTable
( ID INT IDENTITY(1, 1) NOT NULL,
CreatedTimeStamp DATETIMEOFFSET NOT NULL, PRIMARY KEY (ID)
)GO
INSERT INTO TimeStampTable (CreatedTimeStamp)VALUES (SYSDATETIMEOFFSET());
GO
3、smalldatetime:
smalldatetime的数据类型的时间戳支持存储日期和时间,日期的范围可以从1900年1月1日到2079年6月6日,支持的格式为:yyyy-mm-dd hh:mi:ss.nnn,这里年是4位数,月和日也是2位数,键入格式是:yyyy-mm-dd hh:mi:ss.nnn。
比如:
CREATE TABLE TimeStampTable
( ID INT IDENTITY(1, 1) NOT NULL,
CreatedTimeStamp SMALLDATETIME NOT NULL, PRIMARY KEY (ID)
)GO
INSERT INTO TimeStampTable (CreatedTimeStamp)VALUES (getdate());
GO
总结:MSSQL中的时间戳数据类型包括datetime2、datetimeoffset、smalldatetime三种,它们在跨平台存储格式是不一样的,使用时需要注意,并且需要注意存储的日期在这几种数据类型下所支持的范围时间点不同。