Привязка массива PHP к вызову Oracle PL / SQL - PullRequest
1 голос
/ 23 апреля 2009

У меня есть процедура PL / SQL, которая принимает в качестве входного параметра ТАБЛИЦУ ТИПА НОМЕР (10).

Я пытаюсь позвонить с php прямо сейчас. Привязка не вызывает никаких ошибок, все в порядке. Но содержание моего переплета не то, что я ожидал!

Например, я связываю массив: массив (19465,19467) На стороне pl / sql я получаю такие значения: -2.50000000000000000000000000000000E + 107

Похоже, что-то не так произошло в точности / длине / типе? моего связывания, но я потерян.

Вот моя привязка: oci_bind_array_by_name ($ stmt, ': name', $ array, -1, SQLT_NUM);

1 Ответ

0 голосов
/ 29 апреля 2009

Попробуйте использовать «SQLT_INT» вместо «SQLT_NUM». Хотя INTEGER является синонимом для NUMBER (38), SQLT_NUM не работает.

(Из отчетов об ошибках php: [27 октября 2006 г. 8:37 UTC] tony2001@php.net Измените SQLT_NUM на SQLT_INT, и он работает нормально. Для OCI8 нет разницы между этими двумя типами связывания (они обрабатывается одной и той же функцией таким же образом), поэтому некоторая разница в самой библиотеке OCI.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...