【问题标题】:How to convert TSQLTimeStamp to TDateTime如何将 TSQLTimeStamp 转换为 TDateTime
【发布时间】:2017-04-18 18:22:11
【问题描述】:

我在 SQL Server 2008 中有一个这样的表:

CREATE TABLE B_INTERVENTION ( 
ID_BI INT IDENTITY PRIMARY KEY NOT NULL ,
Date_Creation DATE NOT NULL ,
Cree_Par INT NOT NULL ,
D_Arr BIT NOT NULL ,
Obj_Demarrage DATE NOT NULL ,
Obj_Fin DATE NOT NULL ,
Type_BI CHAR (2) NOT NULL ,
INSPECT INT NOT NULL ,
VERIF INT NOT NULL ,
Machine VARCHAR (13) NOT NULL ,
Priorite INT NOT NULL ,
Date_Fin_Trav DATETIME NULL ,
Commentaire VARCHAR(80) NULL
)
GO

当我尝试将 Date_Fin_Trav 的值设置为 TDateTimePicker 时,我在此行中收到错误:

DateTimePicker1.DateTime := FDTable1Date_Fin_Trav.Value;

错误:

[Dcc32 错误] Unit1.pas (53): E2010 不兼容的类型:“TDateTime”和“TSQLTimeStamp”

所以我把代码改成:

DateTimePicker1.DateTime := TimeStampToDateTime( FDTable1Date_Fin_Trav.Value);

同样会出错,因为Type:

[Dcc32 错误] Unit1.pas (53): E2010 不兼容的类型:'TTimeStamp' 和 'TSQLTimeStamp'

所以我的问题是:如何将TSQLTimeStamp 转换为TDateTime

【问题讨论】:

  • @DownVoter 至少发表评论 我的 Q 有什么问题?不清楚?

标签: delphi delphi-10-seattle


【解决方案1】:

Data.SqlTimSt单元中使用SQLTimeStampToDateTime()函数:

将 TSQLTimeStamp 值转换为 TDateTime 值。

【讨论】:

  • 这只是SysUtils 单元中EncodeDate()EncodeTime() 函数的包装器
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-23
  • 2011-06-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-11
相关资源
最近更新 更多