how to fix PLS-00306 (2 merged) [message #561879] |
Thu, 26 July 2012 01:13  |
 |
shanavassb
Messages: 1 Registered: July 2012
|
Junior Member |
|
|
how to fix :PLS-00306
my procedure code is
create or replace procedure search1 (bn in bill.billno%type)
as
s bill.sno%type;
d bill.description%type;
q bill.qty%type;
p bill.price%type;
u bill.unit%type;
a bill.amount%type;
t bill.total%type;
TYPE stab IS REF CURSOR;
st stab;
begin
open st for select sno,description,qty,unit,price,amount,total from bill where billno=bn order by sno asc;
loop
fetch st into s,d,q,u,p,a,t;
exit when st%notfound;
insert into search values(s,'d',q,'u',p,a,t);
commit;
end loop;
close st;
end;
/
my c# code is
string oradb = "Data Source=shamim-pc;User ID=alsafa;Password=alsafa;Unicode=True";
OracleConnection conn = new OracleConnection(oradb);
conn.Open();
OracleCommand cmd = new OracleCommand("search1",conn);
cmd.CommandType = CommandType.StoredProcedure;
OracleParameter b = new OracleParameter("b", OracleType.Number, 8);
b.Direction = ParameterDirection.Input;
b.Value = textBox14.Text;
cmd.Parameters.Add(b);
cmd.ExecuteNonQuery();
|
|
|
Re: how to fix PLS-00306 [message #561883 is a reply to message #561879] |
Thu, 26 July 2012 01:24   |
 |
Michel Cadot
Messages: 68737 Registered: March 2007 Location: Saint-Maur, France, https...
|
Senior Member Account Moderator |
|
|
Welcome to the forum, Please read OraFAQ Forum Guide and How to use [code] tags and make your code easier to read.
Make sure that lines of code do not exceed 80 characters when you format.
Indent the code, use code tags and align the columns in result.
Use the "Preview Message" button to verify.
Also always post your Oracle version, with 4 decimals.
And always the complete error message, we don't know all of them by heart.
Quote:PLS-00306: wrong number or types of arguments in call to 'string'
Cause: This error occurs when the named subprogram call cannot be matched to any declaration for that subprogram name. The subprogram name might be misspelled, a parameter might have the wrong datatype, the declaration might be faulty, or the declaration might be placed incorrectly in the block structure. For example, this error occurs if the built-in square root function SQRT is called with a misspelled name or with a parameter of the wrong datatype.
Action: Check the spelling and declaration of the subprogram name. Also confirm that its call is correct, its parameters are of the right datatype, and, if it is not a built-in function, that its declaration is placed correctly in the block structure.
The problem is more a C# one than a PL/SQL one, I move the topic to the appropriate forum.
Regards
Michel
|
|
|
|