SPOOL
, DEFINE
и SET
- все это команды SQL * Plus. Они не действительны в PL / SQL или в SQL. Следовательно, вы не можете запустить этот вид сценария с помощью инструмента, отличного от SQL * Plus (или инструмента, который поддерживает команды SQL * Plus, такие как SQL Developer или Toad).
Разумеется, вы можете сделать так, чтобы ваше приложение Java вызывало операционную систему для вызова исполняемого файла SQL * Plus (при условии, что оно установлено на компьютере, на котором запущено приложение Java) и передавал сценарий в SQL * Plus. , Но это обычно намного сложнее, чем вам нужно. Было бы более разумно либо просто использовать SQL * Plus, либо выдавать только операторы SELECT
из вашего Java-приложения и использовать классы файлового ввода-вывода Java для записи результатов в файл.