【发布时间】:2018-04-23 09:13:16
【问题描述】:
知道我的查询有什么问题吗?
我正在尝试更新数据库的一行,但我使用的查询导致异常。
UPDATE Table1
SET CHANGE_DELIVERY_REASON = 'Card Activation',
CHANGE_DELIVERY_NOTE = 'ACTIVATION SUCCESS [1 OK - 2 OK]',
RECONCILIATION_STATUS = 1 ,
RECONCILIATION_LAST_UPDATED = '23/4/2018 12:00:00 AM',
RECONCILIATION_COUNT = '6',
ACTIVATION_FAILURE = 'SUCCESS';
我收到此错误:
“SQL 错误:ORA-01843:无效月份”
我没有弄清楚我的查询出了什么问题。
updateQuery = " UPDATE " + clsUtility.GetMasterTable() + " SET ";
updateQuery += " CHANGE_DELIVERY_REASON = 'Card Activation', ";
updateQuery += " CHANGE_DELIVERY_NOTE = '" + notes + "', ";
updateQuery += " RECONCILIATION_STATUS = 1 , ";
updateQuery += " RECONCILIATION_LAST_UPDATED = '" + DateTime.Today + "', ";
updateQuery += " RECONCILIATION_COUNT = '" + reconciliation_count + "',";
updateQuery += " ACTIVATION_FAILURE = '" + resultPart + "', ";
【问题讨论】:
-
理想情况下,您将使用 parameters 并停止将 data 和 code 混合在一个字符串中,然后必须被拉开并重新解析为适当的数据类型。
-
学习使用参数,而不是使用字符串修改查询。