PDA

View Full Version : فراخوانی یک StoredProcedure که پارامترمی گیرد



alireza1384
دوشنبه 19 شهریور 1386, 17:22 عصر
سلام. یک StoredProcedure دراوراکل ایجاد کرده ام که مقادیری را به صورت ورودی می گیرد و درجدول مربوطه ایجادمی کند. می خواهم ازطریق c# و با استفاده از یک oraclecommand و OracleParameter این StoredProcedure را فراخوانی کنم . چگونه می توانم مقادیر پارامترها را مقدار دهی کرده و به command مرتبط نمایم و سپس command را اجرا کنم ؟

aidin300
دوشنبه 19 شهریور 1386, 21:37 عصر
سلام از چه درایوری استفاده می کنی؟ Reference ی Oracle.DataAccess.dll رو تو پروژه Add کن بعد namespace ی Oracle.DataAccess.Client تو فرم using کن چون کارکردن با این Provider نسبت به System.Data.OracleClient.dll راحت تره
کد زیر کمکت می کنه اگه باز مشکلی بود بگو


private Oracle.DataAccess.Client.OracleCommand oracleCommand1;
oracleCommand1.Parameters.Add("ParameterName",OracleDbType.Varchar2);
oracleCommand1.Parameters[0].Value ="MyValue" ;

flowerbulb
دوشنبه 19 شهریور 1386, 21:58 عصر
با تشکر از aidin که واقعا ارزنده بود

اگر هم خواستی از oracleclient استفاده کنی باید از کد زیر استفاده کنی:

oracleCommand obj=new oracleCommand();
obj.parameters.AddWithValue(":parname","value");
obj.CommandText="INSERT...VALUES(:parname);"

به کاراکتر (:) توجه کن که باید قبل از نام پارامتر قرار بگیره.