.Net for MySQL 数据库中的日期时间格式
Posted
技术标签:
【中文标题】.Net for MySQL 数据库中的日期时间格式【英文标题】:DateTime formatting in .Net for MySQL database 【发布时间】:2011-01-01 21:43:23 【问题描述】:如何在 C# 中格式化 DateTime.Now 的字符串结果以插入到 DATETIME 类型的 mysql 数据库表列中?
我尝试了以下方法但没有成功:
insert blah
(Id, Content, DateCreated)
select 123, 'Blah blah blah', 1/5/2010 9:04:58 PM
insert blah
(Id, Content, DateCreated)
select 123, 'Blah blah blah', '1/5/2010 9:04:58 PM'
【问题讨论】:
不确定 MySQL,对于 SQL Server,我使用 "yyyy-MM-dd HH:mm:ss" 【参考方案1】:不要在查询中输入文字日期,而是使用参数。这样您就不必担心格式。它对于用户输入的字符串也更安全,因为它可以防止 SQL 注入。
command.Text = "insert into myTable(myDate) values(?dateParam)";
command.Parameters.Add("?dateParam", theDate);
【讨论】:
始终使用如下参数:所有您的数据类型,而不仅仅是日期时间。【参考方案2】:使用参数化的MySqlCommand 而不是构建您自己的查询并将 DateTime 作为参数传递给。无需格式化。
【讨论】:
以上是关于.Net for MySQL 数据库中的日期时间格式的主要内容,如果未能解决你的问题,请参考以下文章
如何将第二个(隐藏)值添加到 datatables.net 中的单元格?
mysql 时间转换 用EXCEL实现MySQL时间戳格式和日期格互转
无法将日期选择器添加到 C# .NET gridview 单元格