Я выполняю несколько сценариев SQL и пытаюсь прочитать выходной файл журнала, ища ошибки после выполнения каждого файла.
Вот как я выполняю скрипт.
String strCommand = "sqlcmd -S SERVERNAME -d DBNAME -U USERNAME -P PASSWORD -r0 -i \"SCRIPT.sql\" 2> \"OUTPUT.LOG\" 1> NULL";
Process process = Runtime.getRuntime().exec(strCommand);
process.waitFor();
Я перенаправил стандартный вывод на NULL
и ошибки в файл журнала. Сразу после выполнения вышеприведенных операторов я пытаюсь прочитать содержимое файла OUTPUT.LOG, используя File Reader
и BufferedReader
. При попытке открыть файл OUTPUT.LOG возникает исключение.
(система не может найти указанный файл)
Я проверяю путь, где файл должен быть сохранен, и, разумеется, его там нет. Когда я пытаюсь вручную выполнить команду через командную строку, она работает и записывает файл журнала с ошибками, как и ожидалось. Что я делаю не так?