Я узнал, что odbc_execute()
не всегда вызывает правильную ошибку ODBC, когда возвращает FALSE
(не по крайней мере с драйвером Oracle), и я не могу полностью доверять odbc_error()
или odbc_errormsg()
. Эта ситуация легко обнаружить, когда не было предыдущей ошибки, потому что odbc_error()
возвращает пустую строку. Однако, когда он возвращает что-то, я не знаю, принадлежит ли это последней неудавшейся операции или она остается от предыдущей ошибки.
Простейшим решением было бы reset функции odbc_error()
и odbc_errormsg()
при возникновении ошибки, поэтому следующие вызовы начинались бы с нуля, но я не мог найти способ, который можно было бы поддерживать. Можете ли вы найти способ сделать это?
Фон: я улучшаю устаревшее приложение с классом, который инкапсулирует вызовы базы данных. Вот почему мне нужно сделать все как можно более общим.