2016-06-01 4 views
0

Я пытаюсь обновить таблицу Oracle, но я получаю сообщение об ошибке "{" ORA-01745: неверное имя переменной хоста/привязки "}", хотя у меня нет проблемы с добавлением новая запись ... Что мне здесь не хватает?Обновление таблицы Oracle в C#

 public static bool UpdateRow(Byte[] rowId, string paramXml1, string paramXml2, string paramXml3, string paramXml4, 
string tblName = "XML_DATA") 
    { 
     string updateUser = Environment.UserName; 

     try 
     { 
      using (connection = new OracleConnection()) 
      { 
       connection.ConnectionString = ConnectionString; 
       connection.Open(); 
       var command = connection.CreateCommand(); 
       //TODO: how to prevent sql injection? 
       var query = $"UPDATE {tblName} SET XML_DATA1=:xml1, XML_DATA2=:xml2, XML_DATA3=:xml3, XML_DATA4=:xml4, XML_DATA5=:updateUser, UPDATE_DATE=sysdate WHERE UUID=:rowID)"; 
       command.CommandText = query; 
       command.Parameters.Add(new OracleParameter("xml1", paramXml1.ToUpper())); 
       command.Parameters.Add(new OracleParameter("xml2", paramXml2.ToUpper())); 
       command.Parameters.Add(new OracleParameter("xml3", paramXml3.ToUpper())); 
       command.Parameters.Add(new OracleParameter("xml4", paramXml4)); 
       command.Parameters.Add(new OracleParameter("updateUser", updateUser.ToUpper())); 
       command.Parameters.Add(new OracleParameter("rowID", rowId)); 
       int rowUpdated = command.ExecuteNonQuery(); 
       if (rowUpdated > 0) 
       { 
        return true; 
       } 
      } 
     } 
     catch (OracleException e) 
     { 
     } 
     return false; 
    } 

Типы данных:

XML_DATA1 = VARCHAR2 (50 CHAR)

XML_DATA2 = VARCHAR2 (50 CHAR)

XML_DATA3 = VARCHAR2 (50 CHAR)

XML_DATA4 = CLOB

XML_DATA5 = VARCHAR2 (50 CHAR)

UPDATE_DATE = TIMESTAMP (9)

UUID = RAW

ответ

1

Вы используете один из оракула ключевое слово ROWID в качестве параметра в запросе

UUID=:rowID 

Изменить это :rowID1 или что-то другое и попробуйте

+0

Спасибо большое! –

+0

u приветствующий помощник .. – Sachu

Смежные вопросы