gpt4 book ai didi

c# - 将 DateTime 值作为参数传递给 OleDbCommand

转载 作者:太空宇宙 更新时间:2023-11-03 16:44:10 25 4
gpt4 key购买 nike

我在将 DateTime 值作为 DbParameter 传递给查询时遇到问题。似乎 DateTime 值的时间部分被剥离了。

这是一个 C# 示例代码:

DbProviderFactory _factory = OleDbFactory.Instance;

DbCommand cmd = _factory.CreateCommand();
cmd.CommandText = "INSERT INTO SomeTable (SomeDateField) VALUES (?)";

DbParameter p = _factory.CreateParameter();
p.ParameterName = ""; // Not necessary
p.Value = DateTime.Now; // assume Time != 00:00:00
p.DbType = DbType.Date; // DateTime and DateTime2 don't work

cmd.Parameters.Add(p);

我的问题是 Date 参数似乎没有到达 Access 的时间部分,而 SomeDateField 的时间总是 00:00:00。

我不想做这样的事情:

cmd.CommandText = "INSERT INTO SomeTable (SomeDateField) VALUES (#" + aDateTimeString + "#)";

最佳答案

确保 SomeDateField 的数据类型是 DateTime 而不是 Date。另外,尝试制作

p.DbType = DbType.DateTime;

关于c# - 将 DateTime 值作为参数传递给 OleDbCommand,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6552262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com