Как я могу выполнить функцию? - PullRequest
0 голосов
/ 29 декабря 2018

SQL-код работает в Oracle SQL Developer, но не работает в PHP PDO, например:

    $sql = <<<SQL
      var sss varchar2(1000);
      begin
        :sss := AFACE_WWW_PNAL_SAVE(
          54687,
          10.66,
          'Description'
        );
      end;
SQL;
    $pdo->prepare($sql);
    $pdo->query($sql); -- Exception

Ошибка: SQLSTATE [HY000]: общая ошибка: 900 OCIStmtExecute: ORA-00900: недопустимый SQLоператор

Как получить результат в переменной "sss"?

1 Ответ

0 голосов
/ 29 декабря 2018

Я не знаю, разрешены ли там блоки PL / SQL, но если они есть, вы можете пропустить DECLARE в начале.

Но вам не нужен PL / SQL, чтобы получитьзначение из функции.Вы можете запросить dual.

SELECT aface_www_pnal_save(54687, 10.66, 'Description') sss
       FROM dual;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...