使用c#在Oracle表中为时间戳列添加日期

我编写了代码,将“日期”类型的列添加到oracle表中 但我得到

的错误
  

ora-01843:无效月份”,我的代码在下面,oracle DB中的列   类型为“时间戳”,尝试使用c#更新列,

DateTime dt = 
        DateTime.Parse(Convert.ToString(currentitem[SharePointColumnInternal[j]]));
        dt = dt.ToLocalTime();
        UpdateCmd += i + "=" + "'" + dt + "'" + ",";  

这是我建立的更新命令字符串:UpdateCmd 并以c#代码执行。

xlongfei 回答:使用c#在Oracle表中为时间戳列添加日期

您不应通过串联字符串来构建SQL命令;这不仅更加困难,而且还可以进行SQL注入。

看看如何使用参数化查询,例如:

DateTime dt = DateTime.Parse(Convert.ToString(CurrentItem[SharePointColumnInternal[j]]));
dt = dt.ToLocalTime();

using (var connection = new OracleConnection("YourConnectionString"))
using (var command = new OracleCommand("UPDATE YourTable SET YourDateTimeColumn = :dt Where ...",connection))
{
    command.Parameters.Add("dt",dt);
    command.ExecuteNonQuery();
}
本文链接:https://www.f2er.com/3080165.html

大家都在问