如何在 C# 中生成时间和日期并为 mysql 格式化?
Posted
技术标签:
【中文标题】如何在 C# 中生成时间和日期并为 mysql 格式化?【英文标题】:How to generate time and date in C# and format it for mysql? 【发布时间】:2012-12-14 13:54:06 【问题描述】:我想知道如何在 C# 中生成时间和日期,然后将该值格式化为 mysql。
Mysql 支持这种格式:0000-00-00 00:00:00
.
更多信息 - 我正在从 mysql 导入日期时间,并将其作为文本保存在 sqlite 中我想在事件发生时更新 sqlite 中的日期时间,然后我将数据同步回 mysql。
在数据时间的 sqlite 中运行查询的最佳格式是什么?
我想保持相同的格式:0000-00-00 00:00:00
。
是否需要将其转换为 C# 或 Sqlite 数据库的其他本机数据,然后在同步时转换回 mysql 数据?
只是寻找最佳选择。
【问题讨论】:
不要将 C# 中的这些datetime
vlaues 作为字符串处理,只需使用parametrized queries 即可,它会完成所有转换和格式化工作。
嗯,我不知道,我看了你发布的链接,有一些示例代码你可以链接到吗?谢谢
如果您想将日期存储在数据库中但直观地显示 DateTime AM/PM,请查看下面的另一个示例。我也会采纳 Mahmoud Gamal 的建议和用户参数化查询
@DavidEaton - 参数化查询通常是处理数据库时的好习惯。在您的情况下,在插入或更新时处理日期时间值时,您无需担心日期时间的格式和转换,它会完成所有工作。我之前评论中的链接,您将找到所有可用于此目的的方法。例如,您还可以看到this tutorial。
【参考方案1】:
如果您想捕获 AM/PM,请尝试使用一行代码进行类似操作
string timString = DateTime.Now.ToString("dd.MM.yyyy hh:mm:ss tt");
输出“2012-12-29 11:52:54 AM”
如果您想省略 AM/PM,请执行以下操作
string timString = DateTime.Now.ToString("dd.MM.yyyy hh:mm:ss");
输出“2012-12-29 11:52:54”
【讨论】:
【参考方案2】:对于第一个问题,您可以使用
DateTime time = DateTime.Now;
string format = "yyyy-MM-dd HH:mm:ss";
var mytime = time.ToString(format);
【讨论】:
@DavidEaton 您的意思是从“DateTime 时间”或“var mytime”中删除 AM PM 吗? 是的.. 我删除了评论,因为我正在使用 time.toString() 做一个消息框,它绕过了格式,我抓住了它并改变了它,效果很好!以上是关于如何在 C# 中生成时间和日期并为 mysql 格式化?的主要内容,如果未能解决你的问题,请参考以下文章