如何正确地拆分SQL语句以发送给Oracle ADO.NET客户端?例如,假设您在文本文件中有以下代码并希望执行这些语句:
CREATE TABLE foo (bar VARCHAR2(100));
INSERT INTO foo (bar) VALUES('one');
INSERT INTO foo (bar) VALUES('two');
我认为尝试在一个命令中发送所有内容会导致Oracle抱怨";"。我的第一个想法是在";"字符上进行拆分,然后逐个发送。
但是,存储过程也可能包含分号,那么如何使拆分程序保持整个存储过程的完整性?它需要查找begin/end语句或"/"吗?
在这些方面,ODP.NET和Microsoft Oracle Provider之间有区别吗?