PHP oci_execute 用于多条语句

Pat*_*rio 3 php sql oracle oracle-call-interface sql-insert

我试图在一次oci_execute()PHP 调用中发出多个 INSERT 语句。问题是我收到此错误:

ORA-00911: invalid character
Run Code Online (Sandbox Code Playgroud)

我猜这是;在每个语句之后。

所以现在,我的问题是我如何制作多个可以在其中工作的 INSERT 语句oci_execute()

到目前为止,这是我的查询:

INSERT INTO tbl (id, name) VALUES(1, 'John');
INSERT INTO tbl (id, name) VALUES(2, 'Martha');
INSERT INTO tbl (id, name) VALUES(3, 'Richard')
Run Code Online (Sandbox Code Playgroud)

编辑

请注意,;我的查询末尾没有,因为我使用的是 SQL 语句。

Hus*_*vik 5

只需将所有语句包装到匿名 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;
Run Code Online (Sandbox Code Playgroud)

Oracle 不支持批量命令。匿名 PL/SQL 块作为单个命令执行。