【你也能从零基础学会网站开发】浅谈一下SQL Server 2000中的日期和时间数据类型
🚀 个人主页 极客小俊
✍🏻 作者简介:程序猿、设计师、技术分享
🐋 希望大家多多支持, 我们一起学习和进步!
🏅 欢迎评论 ❤️点赞💬评论 📂收藏 📂加关注
日期数据类型
在SQL Server
中,日期数据类型
也是我们在开发中比较常用的数据类型,它主要用于存储日期
和时间
的信息!
DATETIME类型
DATETIME
就是用来存储日期
和时间
,这种类型会占用8个字节!
但是日期和时间也是有范围取值的, 它有效范围为1753年1月1日 ~~ 9999年12月31日
, 这个范围取值完全可以满足大部分的需求了
我们打开企业管理器
,新建一个字段尝试设置为DATETIME
类型试试看
如图
这里我们就在orders订单表
中存储了一个时间格式的字段!!
基本上它的应用场景就是要同时存储日期和时间,比如说记录某个事物的发生时间!
我们可以来尝试一下插入一个时间试试看, 注意插入的格式为: YYYY-MM-DD HH:MM:SS
也就是年-月-日 时:分:秒
当然如果你插入的时间大于或者小于规定的取值范围,那么自然会报错!
如图
SMALLDATETIME类型
这种·SMALLDATETIME类型
也是日期时间类型
,它和 DATETIME类型
一样,但是精度较低
,
它的取值范围是1900年1月1日 ~~~ 2079年6月6日
, 占用4个字节的空间
如图
一般这种适用于对日期和时间
要求不高的场景, 平常也能满足大多数需求
所以我们在实际开发中就可以灵活选择使用哪种类型比较合适!
以上两种日期数据类型
是我们开发中比较常用的基础日期存储格式!
TIMESTAMP 类型
在SQL Server 2000
中,有一种比较特殊的日期时间类型TIMESTAMP类型
它用于记录数据行最后一次
的更新
或插入
的时间戳
, 光这样说肯定大家还是不明白,那么我们下面就来详细的说明一下!
TIMESTAMP 的核心作用
TIMESTAMP类型
是占用8个字节
的存储空间的数据类型!!
但其实最关键的是TIMESTAMP类型
不是直接存储日期
或时间
信息,而是存储一个二进制数值
,
而这个数值在每次对表中的记录进行插入
或更新
操作的时候,都会自动更新
, 也就是说当表中的行被插入
或更新
时,TIMESTAMP
类型的字段
的值会自动更新为一个新的二进制
数值!
那么由于TIMESTAMP
字段的值在每次有操作
都会改变,所以它可以用作数据行
的版本戳
,这样来跟踪数据
的变化并检测数据冲突性!
从数据表字段的限制设计上说, 每个表中只能有一个TIMESTAMP
数据类型的字段,这个字段通常用于跟踪数据的变化
所以我们不能在一个表中, 定义多个TIMESTAMP类型
的字段, 否则会报错!
如图
举个栗子
比如说我们现在有一个名为Employees
的表存储员工的信息,
我们可以在这个表中添加一个TIMESTAMP
类型的字段,用来跟踪和判断员工信息
是否被操作或者更改!
CREATE TABLE Employees ( EmployeeID INT PRIMARY KEY IDENTITY, EmployeeName NVARCHAR(50), Department NVARCHAR(50), LastUpdated TIMESTAMP
);
如图
其中LastUpdated字段
就是一个TIMESTAMP
类型,来记录员工信息
的最后一次更新
的时间戳
那么现在,我们来给Employees表
中插入一些新记录, 不懂SQL操作
的朋友也不要担心,这里看我操作即可
后面会讲到!~
INSERT INTO Employees (EmployeeName, Department) VALUES ('张三', '销售部');
INSERT INTO Employees (EmployeeName, Department) VALUES ('李四', '市场部');
如图
那么这个时候, 插入后LastUpdated
字段会自动更新为一个新的二进制数值,表示这个记录已被插入!
我们可以简单查询一下
如图
在LastUpdated
字段中,你会看到一堆你看不懂的东西! 不过你可以先记住里面的内容是什么!
那么这个到底在什么场景下,起作用呢?
比如: 我们随后要更新
某条记录,例如修改
李四这个员工的部门, 我们来看看是什么效果!
这里我执行一个简单的修改SQL语句
UPDATE Employees SET Department = '技术部' WHERE EmployeeID = 2;
我们来做一个前后对比!~
如图
很明显对应第二条记录的LastUpdated
字段值有变化, 从之前的0x000000000000026A
变化成了0x000000000000026B
用这种方式来提醒我们,字段的记录已被修改!
至于更多的操作~我们还是要把后面的知识点学习了之后,在实际的相中进行演示和操作!
好了今天我们就先说到这里!~
"👍点赞" "✍️评论" "收藏❤️"
欢迎一起交流学习❤️❤️💛💛💚💚
好玩 好用 好看
的干货教程可以 点击下方关注❤️ 微信公众号❤️ 说不定有意料之外的收获哦..🤗嘿嘿嘿、嘻嘻嘻🤗!
🌽🍓🍎🍍🍉🍇