Запуск sqlcmd из php - PullRequest
       4

Запуск sqlcmd из php

0 голосов
/ 17 ноября 2011

У меня есть довольно сложная группа вызовов SQL, которые я сохранил в файле .sql, которые я не могу вызвать с помощью sqlsrv_query, потому что есть набор GO.

Из команды (windows)строка Я могу запустить файл sql, используя

"path\to\sqlcmd" -U name -P pass -S loc -i "path\to\stuff.sql"

Я также могу записать систему ([все это]) в файл php, который я запускаю из командной строки, используя php -f.

Однако, если я вызываю ту же систему ([allthat]) из php-файла, который я вызываю, используя ajax на веб-сайте, я не получаю обратной связи, sql просто не запускается.Я проверил sqlcmd, и у него есть разрешения, позволяющие выполнять всем пользователям.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

Проблема с разрешениями. Если вы запускаете его из командной строки, он работает под ВАШИМИ разрешениями. Когда вы вызываете его через веб-сервер, он работает с разрешениями веб-сервера. Веб-серверу потребуются права на выполнение (и разрешение REACH для sqlcmd), а также права на чтение файла .sql (и разрешение на его доступ).

0 голосов
/ 17 ноября 2011

Для этого вы можете использовать shell_exec .

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