我试图在PHP上的单个oci_execute()调用中发出多个INSERT语句.问题是我收到此错误:
ORA-00911: invalid character
我猜这是;在每个语句之后.
所以现在,我的问题是如何在oci_execute()中使用多个INSERT语句?
到目前为止,这是我的查询:
INSERT INTO tbl (id, name) VALUES(1, 'John');
INSERT INTO tbl (id, name) VALUES(2, 'Martha');
INSERT INTO tbl (id, name) VALUES(3, 'Richard')
编辑:
注意没有;在查询末尾,因为我正在使用SQL语句.
解决方法:
只需将所有语句包装到匿名PL / SQL块中:
BEGIN
INSERT INTO tbl (id, name) VALUES(1, 'John');
INSERT INTO tbl (id, name) VALUES(2, 'Martha');
INSERT INTO tbl (id, name) VALUES(3, 'Richard');
END;
Oracle不支持批量命令.匿名PL / SQL块作为单个命令执行.