c# - 将日期插入 Microsoft Access 数据库
问题描述
如何编写正确的语法将日期插入数据库?
这是我已经尝试过的 SQL 命令:
"insert into table1 (date) values (#"+DateTime.Parse(DateTime.Now.ToShortDateString())+"#)"
还有:
"insert into table1 (date) values ('"+DateTime.Parse(DateTime.Now.ToShortDateString())+"')"
解决方案
我确信我可以在 Stackoverflow 上找到这个问题的副本,但事实证明,我发现的许多关于 C# 和 Access SQL 的日期格式的问题都有自己特殊的奇怪问题,没有一个简单的答案。但是,如果您只是查看各种代码示例中字符串的格式,那么从技术上讲,答案仍然存在于其他问答中。
此处的目的是构建一个 SQL字符串。这两个非工作示例都调用了
DateTime.Parse()
返回 DateTime 值的方法......它不是 String 数据类型。给定的代码正在循环。该方法
DateTime.Now
返回一个 DateTime 类型。但随后该ToShortDateString()
方法将其转换为字符串。但是随后该Parse()
函数将该字符串转换回日期,基本上撤消了您已经拥有的内容。
故事的道德启示?删除对 DataTime.Parse() 的调用。
"insert into table1 (date) values (#" + DateTime.Now.ToShortDateString() + "#)"
推荐阅读
- python - 将 HTML 转换为 TXT
- spring - Spring-如何从对象列表中删除属性?
- reporting-services - 报表生成器中的参数过滤问题
- c++ - 如果子窗口无法处理 OleDragDrop 消息,如何让父窗口处理它们?
- azure - 在 Azure 中为点到站点 VPN 配置静态 IP 地址
- node.js - 如何在 Feathersjs 身份验证中制作自定义 HashPassword 函数
- php - php base_convert 在本地工作正常,但不能在 ubuntu 18 LTS 服务器(Laravel 5.7)上
- c# - 如何在 Main 方法中返回带有字符串参数的 bool 方法
- python - 从 SDMX 响应创建正确的数据框,Python 3.6
- python - 追溯小问题