PHP: exec() возвращает статус «0» (успешно) при выполнении неудачных сценариев PostgreSQL.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 PHP: exec() возвращает статус «0» (успешно) при выполнении неудачных сценариев PostgreSQL.

Сообщение Anonymous »

Я пытаюсь обработать SQL-ошибки при запуске PostgreSQL-скриптов через PHP.
Мой вызов exec() всегда возвращает статус «0», даже если я вызываю сбой SQL-скрипта:< /p>
PHP:

Код: Выделить всё

[...]
$command = "$psqlPath -h $myHost -d $myDb -U $myUser -f $sqlScript 2>&1";
$output = [];
$return_var = 0;
exec($command, $output, $return_var);

Код: Выделить всё

sqlScript
предназначен для нарушения ограничений. Результаты:

Код: Выделить всё

$return_var -> 0
$output[0] -> "psql:/pathToMyScript/sqlScript.sql:1: ERROR: duplicate key value violates unique constraint"
Что я делаю не так? Почему return_var по-прежнему равен 0?
Если это беспокоит: я использую относительно старую версию PostgreSQL: 10.17.

Подробнее здесь: https://stackoverflow.com/questions/790 ... tgresql-sc
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»