解决了 OraDatabase.Parameters.Add "num1",10,1
OraDatabase.Parameters("num1").ServerType=2
OraDatabase.Parameters.Add "num2",10,1
OraDatabase.Parameters("num2").ServerType=2
OraDatabase.Parameters.Add "result",0,2
OraDatabase.Parameters("result").ServerType=2这样的话就没错,为什么用常量不行,而且我在开始的时候定义这些常量也不行

解决方案 »

  1.   

    “OraDatabase.DbExecuteSQL("Begin result:=ADD1(:num1,:num2);end;")”这句真的错了
    应该是“OraDatabase.DbExecuteSQL("Begin :result:=ADD1(:num1,:num2);end;")”
      

  2.   

    //---- ParameterDirectionEnum Values ----
    var adParamUnknown = 0x0000;
    var adParamInput = 0x0001;
    var adParamOutput = 0x0002;
    var adParamInputOutput = 0x0003;
    var adParamReturnValue = 0x0004;//---- DataTypeEnum Values ----
    var adEmpty = 0;
    var adTinyInt = 16;
    var adSmallInt = 2;
    var adInteger = 3;
    var adBigInt = 20;
    var adUnsignedTinyInt = 17;
    var adUnsignedSmallInt = 18;
    var adUnsignedInt = 19;
    var adUnsignedBigInt = 21;
    var adSingle = 4;
    var adDouble = 5;
    var adCurrency = 6;
    var adDecimal = 14;
    var adNumeric = 131;
    var adBoolean = 11;
    var adError = 10;
    var adUserDefined = 132;
    var adVariant = 12;
    var adIDispatch = 9;
    var adIUnknown = 13;
    var adGUID = 72;
    var adDate = 7;
    var adDBDate = 133;
    var adDBTime = 134;
    var adDBTimeStamp = 135;
    var adBSTR = 8;
    var adChar = 129;
    var adVarChar = 200;
    var adLongVarChar = 201;
    var adWChar = 130;
    var adVarWChar = 202;
    var adLongVarWChar = 203;
    var adBinary = 128;
    var adVarBinary = 204;
    var adLongVarBinary = 205;
    var adChapter = 136;
    var adFileTime = 64;
    var adDBFileTime = 137;
    var adPropVariant = 138;
    var adVarNumeric = 139;