【问题标题】:Store SDateTime in SQL database using Haxe使用 Haxe 将 SDateTime 存储在 SQL 数据库中
【发布时间】:2017-04-10 05:32:14
【问题描述】:

我目前正在使用 Haxe 创建用于存储游戏数据的数据库和表。

我有一个字段是时间戳。我正在使用以下内容:

class GameData extends Object {
    public var id : SId;
    public var username : SString<32>;
    public var countryA2 : SString<32>;
    public var scoreFor : SInt;
    public var scoreAgainst : SInt;
    public var scoreDifference : SInt;
    public var ts : SDateTime;
}

然后我尝试使用

填充此字段
gameData.ts = Date.now();

但所有这些返回都是“日期”,而不是数字中的实际日期。

然后我尝试了 DateTools.format() 类并生成了这个:

DateTools.format(Date.now(), "%Y-%m-%d %H:%M:%S")

这给了我如下日期/时间:2016-11-25 19:17:13

但是尝试将其存储在字段中只会返回错误:

String should be sys.db.SDateTime

通过 Haxe 在 SQL 数据库中存储日期/时间的理想方式是什么?

谢谢。

【问题讨论】:

  • SDateTime 只是根据 Haxe 文档的 Date 的别名/类型定义:api.haxe.org/sys/db/SDateTime.html 我认为您应该能够使用 Date.now() 以尝试填充它的第一种方式存储日期.返回“日期”的是什么(你在追踪它吗?)以及你使用的是什么目标?
  • 正如山姆所说。导入 sys.db.Types;类 Main{ 静态公共函数 main():Void { var sdate: SDateTime = Date.now(); } }

标签: mysql sql sql-server haxe leaderboard


【解决方案1】:

现在设法解决它,新的一天似乎奇怪地允许 Date.now() 工作。谢谢大家的帮助。

【讨论】:

    【解决方案2】:

    您可能应该使用 gameData.ts.toString() 或其他 Data 方法“获取数字” 查看https://github.com/ufront/ufront-orm,您可以在其中找到http://old.haxe.org/manual/spod Haxe 的 sys.db.* DB 类和宏的“仍然是最佳资源” google for 'haxe SPOD' - 'sys.db package 还包含 SPOD 的新版本' - SPOD 相关示例可能仍与 sys.db 兼容 - f.e. this

    【讨论】:

      猜你喜欢
      • 2019-04-20
      • 2017-02-23
      • 1970-01-01
      • 2011-08-12
      • 1970-01-01
      • 2017-12-04
      • 1970-01-01
      • 2014-07-21
      • 1970-01-01
      相关资源
      最近更新 更多