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