0

我正在使用Oracle.ManagedDataAccessnuget 对 oracle db 进行更新。我可以更新非日期数据,但是当我尝试插入数据时会引发Not a valid month异常。

string cmdQuery = string.Format("UPDATE HKSTF087.FUELCHARGES SET EFFECTIVETHRUDATE = '{0}'  WHERE TITLECODE = '{1}'", currentEffectiveDate.AddSeconds(-1), mtcFuel.TITLECODE);

字符串看起来像

"UPDATE HKSTF087.FUELCHARGES SET EFFECTIVETHRUDATE = '8/13/2017 11:59:59 PM'  WHERE TITLECODE = 'SCRUBS'"

我尝试了其他 DateTime 格式,但没有解决。

4

1 回答 1

1

您可以使用 OracleTO_DATE函数并以相同的方式格式化您的日期。

string cmdQuery = string.Format("UPDATE HKSTF087.FUELCHARGES SET EFFECTIVETHRUDATE = TO_DATE('{0:MM/dd/yyyy HH:mm:ss}', 'mm/dd/yyyy hh24:mi:ss')  WHERE TITLECODE = '{1}'", currentEffectiveDate.AddSeconds(-1), mtcFuel.TITLECODE);

但我建议您为此使用参数。

于 2017-08-29T12:21:25.203 回答