如何每年更新数据库字段
我有一个数据库,其中包含 2 个名为 DateOfBirth
和 Age
的字段,分别用于存储用户出生日期和年龄。我希望根据 DOB 匹配服务器日期,Age
列每年自动增加 1。
实现这一目标的最佳方法是什么?我正在使用 asp.net 和 sql server 2008。
I have a database which contains 2 fields called DateOfBirth
and Age
, for storing users DOB and age respectively. I want the Age
column to be automatically incremented by 1 every year, according to the DOB matching server date.
What could be the best way for achieving this? I am using asp.net and sql server 2008.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不要同时存储
DateOfBirth
和Age
,而是创建一个 计算列在计算年龄的表上:因此在 yout 表创建中:
如果要保留计算值,请添加
PERSISTED
关键字。一种可能性是,如果您希望以年和月显示年龄:
然后在表格上创建一个视图,将
AgeInDays
格式设置为年和月。这是另一种可能性,使用
[AgeYears]
的计算列:[您应该检查边界情况...]
Rather than store both the
DateOfBirth
andAge
, create a computed column on the table that calculates the age:So in yout table creation:
If you want to persist the computed value add the
PERSISTED
keyword.One possibility, if you want Age displayed in years and months:
then create a view over your table that formats
AgeInDays
into years and months.Here is another possibility, using a computed column of
[AgeYears]
:[You should check for boundary cases...]