Как запустить скрипт оракула с помощью PHP - PullRequest
0 голосов
/ 14 декабря 2010

Я запустил проект, в котором пользователь может подключиться к базе данных mySQL или базе данных oracle.Я получил часть MySQL, но оракул немного сложнее.Стандартные запросы работают, например, SELECT * FROM author, но когда я пытаюсь загрузить скрипт для создания схемы, я получаю недопустимые ошибки операции.Я пытался использовать «START» и «@» по-разному, но безрезультатно.Эти команды работают в командной строке, но не в php.Я пробовал следующее:

else if($databaseType == "Oracle")
{
$c = oci_connect($username, $password, $server);
     if (!$c) {
       echo "Unable to connect: " . var_dump( oci_error() );
       die();
     }


    // Delete previous schema
    $s = oci_parse($c, "@/oracle/dropall");
    oci_execute($s, OCI_DEFAULT);

    // Create schema
    $s = oci_parse($c, "@/oracle/oracle");
    oci_execute($s, OCI_DEFAULT);

    // Create first trigger
    $s = oci_parse($c, "@/oracle/oracle_trigger1");
    oci_execute($s, OCI_DEFAULT);

    // Create second trigger
    $s = oci_parse($c, "@/oracle/oracle_trigger2");
    oci_execute($s, OCI_DEFAULT);

    // Populate the database
    $s = oci_parse($c, "@/oracle/oracle_populate");
    oci_execute($s, OCI_DEFAULT);


    // Commit to save changes...
    oci_commit($c);

    // Logoff from Oracle...
    oci_free_statement($s);
    oci_close($c);
}

1 Ответ

1 голос
/ 14 декабря 2010

OCI_PARSE

ресурс oci_parse (ресурс $ connection, строка $ sql_text)

Ожидается инструкция SQL вместо имени файла.

Вы хотите попробовать:

 $s = oci_parse($c, file_get_contents('/oracle/dropall'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...