# پایگاه‌های داده > سایر پایگاه‌های داده > Oracle >  اتصال اوراکل 11 به سی شارپ

## daryasalar

با سلام.
من یه برنامه ساده نوشتم که می خوام به دیتابیس اوراکل 11 متصل بشه اما این پیغام خطا رو هنگام open کردن اتصال میده.ممنون میشم راهنماییم کنید.

این هم رشته اتصال:string connString = "Provider=OraOLEDB.Oracle;Data Source=.;User Id=SYSTEM;Password=1234";

خطا:  ORA-12154: TNS:could not resolve the connect identifier specified

----------


## babila

تو قسمت Data Source باید نام دیتابیس رو ذکر کنید.

----------


## alicam

سلام دوست عزیز  
Source data در صورتی میتونه خالی باشه که پایگاه داده شما sql  باشه
وقتی از oracle  استفاده میکنی باید حتما باید چک کنی 
ممنون

----------


## amir11205

سلام دوست عزیز
همونطور که دوستان گفتند باید نام دیتا سورس رو تعریف کنی
که اونم زمان نصب oracle 11g مشخص کردی
خداحافظ

----------


## شفیعی

سلام 
کسی نمونه برنامه در این زمینه داره ( اوارکل و سی شارپ )

----------


## saber_talas

اتصال به اراکل مانند اس کیو ال نیست ، اول باید اراکل کلاینت نصب بشه و از طریق اون به دیتابیس وصل بشید ، البته کامپوننت های Devart و Dot Connect امکان اتصال به دیتابیس اراکل
بدون نیاز به اراکا کلاینت رو فراهم می کنند.

----------


## faravaghi

سلام،
این برنامه رو قبلا نوشتم برای تست سی شارپ با اوراکل.
الان نمیدونم چطوریه!
انشاء الله که جواب بده و به کارتون بیاد.

----------


## aria2006

با سلام خدمت دوستان
من یک پایگاه داده اوراکل 10g دارم که میخوام توسط سی شارپ جستجویی بر اساس شماره اشتراک بر روی یکی از جداول این پایگاه داده انجام بدم که رکوردهای حاصل از اون رو داخل دیتا گرید بهم نشون بده- برای گرفتن پارامتر و دادن خروجی از پروسچر استفاده کردم. (البته اینم بگم تحت وب هستش) اما ارور زیر رو میده:ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'SSS3'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

اینم کد برنامه:

OracleConnection  objconnection =new OracleConnection ("User Id=kohsaar;password=5609;data source=kohsaar");
        objconnection.Open();
        OracleDataAdapter objdataadapter =new OracleDataAdapter  ("sss3", objconnection);
        objdataadapter.SelectCommand.CommandType = CommandType.StoredProcedure;
        objdataadapter.SelectCommand.Parameters.Add(new OracleParameter("ineshtrak",OracleDbType.Int32 ));

        objdataadapter.SelectCommand.Parameters["ineshtrak"].Value =Convert.ToInt32(TextBox1.Text);
        DataSet objdataset = new DataSet();

        objdataadapter.Fill (objdataset,"a_daryaft" );
        grdtable1.DataSource = objdataset;
        grdtable1.DataBind();


اینم کد پروسچر استفاده شده:

PROCEDURE SSS3
   ( ineshtrak IN number,
     outpartcode out number)
   IS
BEGIN

    select a_partcode
    into outpartcode
    from a_daryaft 
    where a_eshtrak=ineshtrak;

END; 


پیشاپیش با تشکر از شما دوست عزیزی که جهت رفع این خطا وقت گذاشته و فکر میکنید.

----------


## aria2006

:ناراحت:  :ناراحت:  :ناراحت:  :ناراحت:  :ناراحت: 
از اساتید کسی پیدا میشه پاسخ سوال من رو بده  :گریه:  :گریه:

----------


## sajjadrazmi

سلام

پارامتر خروجیتو هم مثل پارامتر ineshtrakبه لیست پارامترها اضافه کرده ولی مقداردهیش نکن.

----------


## aria2006

sajjadrazmi 	 	 		 			 				نقل قول: اتصال اوراکل 11 به سی شارپ
 			 			سلام

پارامتر خروجیتو هم مثل پارامتر ineshtrakبه لیست پارامترها اضافه کرده ولی مقداردهیش نکن.


ممنون از راهنماییتون آقا سجاد مشکل بنده در این قسمت برطرف شد. لطف کردید.

----------


## behu66

با سلام
connection string که شما نوشتین به این شکله
 connection.ConnectionString = "Provider=MSDAORA;Data Source=Eorg;User ID=system;Password=123;Unicode=True";
ولی روی سیستم من خطا میده که
MSDORA in not registered
یه سوال دیگه اینکه Data Source=Eorg که نوشتین Eorg اسم سروره؟ اسم دیتا بیسه؟ اگر فرضا دیتا بیس ما روی سرور یا IP 192.168.1.1  و با اسم orcl باشه چی؟

----------

