Как ВЫБРАТЬ данные из Oracle, используя PHP - PullRequest
0 голосов
/ 06 апреля 2019

Я использую ORACLE, чтобы выбрать пользователя, который заблокировал таблицу, запрос работает нормально, но когда я пытаюсь получить результаты, выдается сообщение об ошибке.

$c = ' SELECT oracle_username os_user_name, locked_mode, object_name, object_type FROM V$LOCKED_OBJECT lo,DBA_OBJECTS do'." WHERE lo.object_id = do.object_id AND do.object_name='CLIENTS'";

$s = oci_parse($conn_s, $c );
    oci_execute($s);


    while($res = oci_fetch_array($s, OCI_ASSOC+OCI_RETURN_NULLS)){
        //var_dump($res);
        $check = $res['OS_USER_NAME'];
    }
echo $check;

как я могу получить значения;

Ответы [ 2 ]

0 голосов
/ 06 апреля 2019

Если вы используете две разные таблицы и извлекаете имя столбца, мы хотим сообщить базе данных, какой столбец таблицы мы хотим ВЫБРАТЬ. Например, lo.oracle_username, do.os_user_name.

$c = "SELECT oracle_username, os_user_name, locked_mode, object_name, object_type FROM V$LOCKED_OBJECT lo,DBA_OBJECTS do WHERE lo.object_id = do.object_id AND do.object_name='CLIENTS'";

$s = oci_parse($conn_s, $c );
  $res = oci_execute($s);


    while($res = oci_fetch_array($s, OCI_ASSOC+OCI_RETURN_NULLS)){
        //var_dump($res);
        $check = $res['OS_USER_NAME'];
    }
echo $check;
0 голосов
/ 06 апреля 2019

У вас должна быть запятая oracle_username os_user_name,, например:

$c = ' SELECT oracle_username, os_user_name, locked_mode, object_name, object_type FROM V$LOCKED_OBJECT lo,DBA_OBJECTS do'." WHERE lo.object_id = do.object_id AND do.object_name='CLIENTS'";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...