如何为DateTime类型赋Null值!!

如何为DateTime类型赋Null值!!,第1张

Datetime是struct,值类型,值类型是不能为null的.只有Datetime的泛型表达DateTime?类型可以赋值为null,但这只是一种简写,DateTime?的实际类型为Nullable<DateTime>.所有值类型都可以转换为这种形式来赋值为null.

PERIOD_DIFF(P1,P2)

返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。

mysql>select PERIOD_DIFF(9802,199703)

->11

DATE_ADD(date,INTERVAL expr type)

 

DATE_SUB(date,INTERVAL expr type)

 

ADDDATE(date,INTERVAL expr type)

 

SUBDATE(date,INTERVAL expr type)

这些功能执行日期运算。对于MySQL 3.22,他们是新的。ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词。

在MySQL 3.23中,你可以使用+和-而不是DATE_ADD()和DATE_SUB()。(见例子)date是一个指定开始日期的

DATETIME或DATE值,expr是指定加到开始日期或从开始日期减去的间隔值一个表达式,expr是一个字符串;它可以以

一个“-”开始表示负间隔。type是一个关键词,指明表达式应该如何被解释。EXTRACT(type FROM date)函数从日期

中返回“type”间隔。下表显示了type和expr参数怎样被关联: type值 含义 期望的expr格式

SECOND 秒 SECONDS

MINUTE 分钟 MINUTES

HOUR 时间 HOURS

DAY 天 DAYS

MONTH 月 MONTHS

YEAR 年 YEARS

MINUTE_SECOND 分钟和秒 "MINUTES:SECONDS"

HOUR_MINUTE 小时和分钟 "HOURS:MINUTES"

DAY_HOUR 天和小时 "DAYS HOURS"

YEAR_MONTH 年和月 "YEARS-MONTHS"

HOUR_SECOND 小时, 分钟, "HOURS:MINUTES:SECONDS"

DAY_MINUTE 天, 小时, 分钟 "DAYS HOURS:MINUTES"

DAY_SECOND 天, 小时, 分钟, 秒 "DAYS HOURS:MINUTES:SECONDS"

MySQL在expr格式中允许任何标点分隔符。表示显示的是建议的分隔符。如果date参数是一个DATE值并且你的计算仅仅

包含YEAR、MONTH和DAY部分(即,没有时间部分),结果是一个DATE值。否则结果是一个DATETIME值。

mysql>SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND

->1998-01-01 00:00:00

mysql>SELECT INTERVAL 1 DAY + "1997-12-31"

->1998-01-01

mysql>SELECT "1998-01-01" - INTERVAL 1 SECOND

->1997-12-31 23:59:59

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",

INTERVAL 1 SECOND)

->1998-01-01 00:00:00

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",

INTERVAL 1 DAY)

->1998-01-01 23:59:59

mysql>SELECT DATE_ADD("1997-12-31 23:59:59",

INTERVAL "1:1" MINUTE_SECOND)

->1998-01-01 00:01:00

mysql>SELECT DATE_SUB("1998-01-01 00:00:00",

INTERVAL "1 1:1:1" DAY_SECOND)

->1997-12-30 22:58:59

mysql>SELECT DATE_ADD("1998-01-01 00:00:00",

INTERVAL "-1 10" DAY_HOUR)

->1997-12-30 14:00:00

mysql>SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY)

->1997-12-02

mysql>SELECT EXTRACT(YEAR FROM "1999-07-02")

->1999

mysql>SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02 01:02:03")

->199907

mysql>SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03")

->20102

该控件不能直接置成空值,但可以用以下方式实现this.dateTimePicker1.ShowCheckBox=true//出现复选框this.dateTimePicker1.Checked=false//不选中在使用时先判断Checked的状态就可以了。procedureTForm1.DateTimePicker1CloseUp(Sender:TObject)beginDateTime_SetFormat(DateTimePicker1.Handle, PChar('dd.MM.yy'))endprocedureTForm1.DateTimePicker1Click(Sender:TObject)beginifFDTMDateEmptythenbeginDateTimePicker1.Perform(WM_KEYDOWN,VK_F4,0)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7737102.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存