Вчера утром довелось сделать некоторую простенькую аналитику. Задача была следующей. Взять данные из базы Oracle и из базы MySQL и сравнить их. Сразу хочу отметить, что по СУБД Oracle я далеко не специалист, но я, php и mysql знакомы уже очень давно. И нас можно назвать хорошими друзьями.
Так вот, уходя от лирики, хочу задать вопрос достопочтенной публике, почему нижеприведенный код наглухо подвесил базу oracle (т.е. до тех пор пока не были убиты сессии организованные OCI + php в Oracle эта СУБД вообще не могла выполнять никакие действия с данными).
Убедитесь, что виноват именно запрос. Выполните его в sqlplus'е. Если отработает — виноват не оракл, а ваш пхп. Если не отработает, то нужно разбираться с запросом. Для начала упростите запрос, оставив простую выборку из одной таблицы без вызова хранимых процедур. Потом пошагово добавляйте в запрос связки с другими таблицами, вызовы хранимых процедур. На каком-то шаге зависнет — будете хоть знаять, в какую сторону копать дальше.