Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml ORA-01084:OCI调用中的参数无效_Xml_Vb.net_Oracle_Stored Procedures_Clob - Fatal编程技术网

Xml ORA-01084:OCI调用中的参数无效

Xml ORA-01084:OCI调用中的参数无效,xml,vb.net,oracle,stored-procedures,clob,Xml,Vb.net,Oracle,Stored Procedures,Clob,当我通过vb.net代码将string.empty或“”传递给下面存储过程的输入参数时,出现“ORA-01084:OCI调用中的无效参数”错误 create or replace PROCEDURE SP_NAME ( in_xml IN CLOB, ) IS BEGIN SELECT xml.ID, xml.Name FROM XMLTABLE ('root/child' passing XMLT

当我通过vb.net代码将string.empty或“”传递给下面存储过程的输入参数时,出现“ORA-01084:OCI调用中的无效参数”错误

 create or replace PROCEDURE  SP_NAME
    (
      in_xml IN CLOB,
    )
    IS
    BEGIN
SELECT  xml.ID,
        xml.Name
        FROM XMLTABLE
        ('root/child' passing XMLTYPE(in_xml)
            columns
        ID NUMBER PATH 'ID',
        Name VARCHAR2(50)PATH 'Name') xml

    EXCEPTION WHEN NO_DATA_FOUND THEN NULL;
        WHEN OTHERS THEN RAISE_APPLICATION_ERROR (-20999, 'SP_NAME'||SQLCODE||'-'||SQLERRM) ;
    END SP_NAME;
下面是用于调用SP的代码

    Public Class DAL
    Private _db As Microsoft.Practices.EnterpriseLibrary.Data.Database
    Dim param(0) As Object
    param(0) = String.Empty
    _db.ExecuteNonQuery(SP_NAME, param)
    End Class

另外,我有一个特定的场景,需要将空字符串传递给存储过程。

不确定您希望我们说什么。您已经取出了程序的内脏,因此我们无法就如何修复代码向您提供任何建议。如果你需要帮助,你需要为我们提供一些帮助。如果有帮助,我已经更新了程序。我在select语句中提取xml,并对其他一些表执行更新。我还有一个标志参数,说明in_xml是否有xml数据。如果为false,则不执行xml提取。但问题是我无法将String.Empty或“”传递给它抛出“ORA-01084:OCI调用中的无效参数”的IN参数(在xml中)