gpt4 book ai didi

mysql - BLToolKit:如何获取 'empty' 日期时间字段?

转载 作者:行者123 更新时间:2023-11-29 06:20:06 25 4
gpt4 key购买 nike

如果要映射的字段之一具有日期时间字段并且数据库中的相应值具有“0000-00-00”或“0001-01-01”,则请求执行失败。返回以下错误

Unable to convert MySQL date/time value to System.DateTime

是否有可能获取这样的值?

我尝试指定“日期时间?” value 作为属性类型 - 它也没有帮助(实际上,我没想到这会有帮助)。

附言我使用MySql 5.1

最佳答案

我在使用 NHibernate 时遇到了类似的问题,并且在异常中出现了相同的错误。

这是由于 MySQL 独特的“功能”允许 DATE 字段中存在无效日期,特别是使用 0000-00-00 作为 DATE NOT NULL 列的默认值。当遇到这样的日期时,它在将自身转换为 DateTime 时会抛出异常。

建议的解决方案是添加

允许零日期时间=True;

到连接字符串,但实际上这对我来说不起作用。我最终通过更改连接字符串添加解决了问题

转换零日期时间=true;

所以你的 app.config 部分看起来像这样

  <connectionStrings>
<add
name="ConnectionString.MySql"
connectionString="Server=localhost;Port=3306;Database=BLT;Uid=someuser;Convert Zero DateTime=true;"
providerName="MySql.Data.MySqlClient"/>

关于mysql - BLToolKit:如何获取 'empty' 日期时间字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4290106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com