【问题标题】:How to set DateTime using mysql xdevapi in C#如何在 C# 中使用 mysql xdevapi 设置 DateTime
【发布时间】:2020-05-26 01:27:31
【问题描述】:

我正在尝试使用 MySqlX.XDevAPI 插入包含 DATETIME 字段的行。 无论我尝试什么,我都会得到这个神秘的信息:

令牌位置 0 处的预期令牌类型 IDENT

我试过字符串格式:

dt.ToString("yyyy-MM-dd HH:mm:ss")

我尝试过 UTC 秒格式:

((DateTimeOffset)dt).ToUnixTimeSeconds();

我也尝试过将 System.DateTime 实例作为值传递...没有任何效果,而且我找不到任何有关如何执行此简单任务的文档。

正确的格式是什么?

【问题讨论】:

  • 您需要给我们一个更大的提示,以了解您的代码实际上是什么样的。在这一点上,任何事情都几乎是一场猜谜游戏。 minimal reproducible example
  • 我正在尝试使用 MySqlX.XDevAPI 插入包含 DATETIME 字段的行。 - 在我看来,您以某种方式生成了无效的 MySQL SQL。您是否有引发此错误的示例插入语句?
  • 没有 MySqlX.XDevAP 是一个黑盒子。代码实际上是这样的: return DB.Instance.Schema.GetTable(_tableName).Insert(_data.Keys.ToArray()) .Values(_data.Values.ToArray());
  • 如果我可以检查什么字符串语句看起来像我不会问这个问题。但是这个框架是不可能的。
  • 如果我删除此字段,一切正常。

标签: c# mysql mysql-x-devapi


【解决方案1】:

想通了。显然它不喜欢该列被称为“时间”,因为它是一个保留关键字。 现在这有效: dt.ToString("yyyy-MM-dd HH:mm:ss")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多