如何将C# Datetime.Today
转换为 MySQL 中的 Timestamp
格式,例如 2011-10-20 12:00:00?
如果您想以该格式获取日期时间字符串,则可以执行以下操作...
string dt = DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss");
关于DateTime ToString方法的额外格式选项,请参见此处
尽管我了解MySQL会接受格式为yyyy-MM-dd HH:mm:ss的时间戳。 我建议这样做,因为它将确保像05/08/2011这样的日期被正确地解析为正确的月份和日...
string dt = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
您可以使用类似以下的代码,并将返回值用作 Sql 的时间戳。
public static string GiveMeTimestamp(DateTime value)
{
return value.ToString("yyyy/MM/dd HH:mm:ss:ffff");
}
这可能会帮助那些有着和我相同思路和方法的人:
在MYSQL Workbench中直接进行测试:
INSERT into tblDemo VALUES (898,CURRENT_TIMESTAMP());
create table tblDemo (ScenarioID INT(10),
ProcessTime DATETIME DEFAULT CURRENT_TIMESTAMP() NOT NUll);
现在在您的C#代码中编译字符串,如下所示:
string query = "INSERT into tblDemo " +
"VALUES (" + ScenarioID + "," + " CURRENT_TIMESTAMP())";
请注意上面查询中引号中的CURRENT_TIMESTAMP()
输出结果为: '2021-03-04 17:52:30'