Вам не нужно писать полноценный парсер, чтобы сделать эту работу - все, что вам нужно сделать, - это то, что делают инструменты командной строки / SSMS - читать строки из файла и накапливать их в (в .Net этостроитель строк, не могу вспомнить эквивалент в Java), пока не встретится строка, которая начинается со слова GO
.Каждый раз, когда вы достигаете этой точки, отправляйте накопленный буфер на SQL Server, а затем очищайте буфер и запускайте его снова.
До тех пор, пока ваш текущий скрипт имеет GO
, когда это требуется, вышеприведенное должно работать.