Nie znam C#, ale zakładam, że możesz wysyłać tylko pojedyncze instrukcje SQL lub bloki PL/SQL, a nie listę oddzieloną średnikami. W każdym razie exec
nie jest (jest to skrót SQL*Plus obsługiwany przez niektóre IDE).
Prawdopodobnie musisz wysłać osobne polecenia, takie jak:
create directory test_dir as 'C:\\'
i
begin run_query('SELECT {1} FROM {2} {3} ORDER BY {4}','TEST_DIR','{5}'); end;
(Uwaga PL/SQL używa średników, ale SQL nie ma natywnego terminatora instrukcji, chociaż narzędzia często wymagają znaku terminatora, a średnik jest często wartością domyślną).