c# - 旧版本的 MySQL 是否允许不同的日期格式?
问题描述
所以我有一些 C# 程序在连接到服务器的几台计算机上运行,以从旧版本的 MySQL 5.6.15 访问数据库。我正在尝试用现在在 5.7.24 版本上运行更新的 MySQL 的新机器替换服务器,但是在导入数据库后,我注意到我的所有程序都因修改日期的插入或更新查询而崩溃列。
经过测试,我认为这些程序正在使用日期格式为“2019-02-18 00:00:00Z”的查询,它曾经在我的旧 MySQL 安装中工作,但给了我一个“#1292 - 不正确的日期值:'2019 -02-18 00:00:00Z' for column 'checkin' at row 1" 当我尝试在新的 MySQL 版本中操作时出现错误。如果我删除日期字符串末尾的 Z 查询会像预期的那样正常,我可以更改我所有程序中的所有查询来修复问题,但我认为如果可以通过更改某些内容来解决这个问题会更好而是数据库。
我不知道新版本是否可能不再允许这种日期,或者它是否与 my.ini 中的某些配置问题有关。我检查了我的旧 my.ini,但我没有看到任何与日期格式相关的内容,新的在 sql-mode 行中有一些关于日期格式的内容,但评论该行并不能解决问题。
Here is my MySQL configuration file in case that it's necessary:
在此先感谢您的时间。
解决方案
刚刚解决了这个问题,我认为即使我评论了 sql-mode 行,新的 MySQL 服务器也在严格模式下运行,或者我之前测试它时犯了一个错误,无论哪种方式都可以改变它
sql-mode=""
在 my.ini 中足以摆脱错误。
推荐阅读
- algorithm - Minizinc 错误:无效的类型说明:预期的 `float',实际的 `var float'
- python - 如何在 Python 中为每个日期绘制图表
- html - 宽度和高度 100% 不适用于弹出图像
- node.js - Discord.js:TypeError:client.channels.get 不是函数
- azure-devops - 在 azure 管道中的代理池中扩展模板检查
- javascript - 为什么在执行递归回调时 .foreach 的行为与 for...of 不同?
- windows - 有没有办法在 D3D 应用程序使用 Visual Studio 2015 中调试 gpu 渲染图?
- scala - 从列中的给定列获取逗号分隔的对应值列表
- r - 如何在 r 中找到 95% 的双变量数据?
- javascript - 通过动态数量的选择发出甜蜜的警报