當我試圖調用一個SP獲得例外低於..調用存儲過程從asp.net和聲明中缺少
System.Data.OracleClient.OracleException:ORA-06550:第1行,第7列: PLS-00201:標識符 'ULTIMUS.PUSH_PULL_MESSAGE' 必須被聲明 ORA-06550:第1行,第7列: PL/SQL:語句忽略
在System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle,的Int32 rc) at System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle,C ommandBehavior行爲,布爾needRowid,OciRowidDescriptor & rowidDescriptor,ArrayList的& resultParameterOrdinals) 在System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal(布爾needRowid,OciRowidDescriptor & rowidDescriptor) 在System.Data.OracleClient.OracleCommand.ExecuteNonQuery() 在_Default。 GetPushPullReply(MSISDN字符串,字符串短信,簡碼字符串)在C:\的Inetpub \ wwwroot的\ pushpullapps \ Default.aspx.cs:行73
目前我使用...下面的代碼..
OracleConnection con = new OracleConnection();
con.ConnectionString = conString;
con.Open();
OracleCommand mycom = new OracleCommand();
mycom.CommandText = "ultimus.push_pull_message";
mycom.Connection = con;
mycom.CommandType = CommandType.StoredProcedure;
saveSer("Calling sp...");
mycom.Parameters.Add("cell_no", OracleType.VarChar, 2000).Value = msisdn;
mycom.Parameters["cell_no"].Direction = ParameterDirection.Input;
mycom.Parameters.Add("msg_txt", OracleType.VarChar, 2000).Value = sms;
mycom.Parameters["msg_txt"].Direction = ParameterDirection.Input;
mycom.Parameters.Add("msg_out", OracleType.VarChar, 2000).Direction = ParameterDirection.Output;
saveSer("adding parameter...");
mycom.ExecuteNonQuery();
saveSer("Execute successfully....");
String output = mycom.Parameters["msg_out"].Value.ToString();
saveSer("Output found..." + output);
con.Close();
return output;
請確保您有與所定義的存儲過程正確的名稱,並且可以從連接字符串中的登錄憑證訪問。 – NoChance
我認爲這意味着您的存儲過程第1行第7列出現錯誤。我無法確定,因爲你還沒有發佈你的存儲過程! –
其實我沒有存儲過程...我只有訪問憑證.. 我已經從PHP訪問此SP ..但通過ASP獲取問題.. 謝謝 –