الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الربط مع قاعدة بيانات أوراكل على السيرفر

بدأه hid في 24 ديسمبر 2008 · 7 رد · 3,051 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله ..

أنا الآن بصدد عمل برنامج استعلامات في قاعدة بيانات , وهذه القاعدة موجودة على شبكة , وهي بداخل السيرفر .

قاعدة البيانات من نوع أوراكل .

وأود في النهاية عمل البرنامج من نفس جهاز العميل , ويتصل بالسيرفر , ثم يتصل بقاعدة البيانات , ويستعرض .

الشبكة ذات مجال(دومين) وليست مجموعة عمل , ومحمية , وكذلك قاعدة البيانات لها مستخدمين وكلمة مرور .

وحاولت بطرق كثيرة , لكن أتوقع أن المسألة تتطلب أشياء غير كود البرمجة فقط .

......................

شكرا لكم ,

تم تعديل هذه المشاركة بواسطة hid في 24 ديسمبر 2008 في 11:55

#2

سؤالك غير واضح

ما الذى تريد عمل بالضبط

برجاء تحديد المطلوب على شكل نقاط

لو أن العمل سوف يكون فى Domain فهذا الأمر ليس له علاقة بالبرمجة و إنما الأمر فى يد إما DBA أو NTA

الإتصال بقاعدة بيانات موجود على جهاز فى شبكة يتحكم فيها Domain من أسهل ما يكون

فقط يجب توفير حسابات الsql المناسبة بالنسبة للClient من على الDomain Controller

حيث أن الجهاز الذى سوف يتصل على الDB فى هذه الحالة له حساب فى الDC يعنى سوف يكون الدخول windows Auth.

مرة أخرى حدد المطلوب فى نقط

لا إله إلا الله محمد رسول الله

アッラー以外に神はなし。ムハンマドはアッラーの使徒である

#3

شكرا لك عزيزي نور (محمد نور)

وقد صدقت في قولك بأن سؤالي غير واضح , والسبب يعود لكوني لم أعمل برنامجا قبلا على شبكة , وكذلك على قاعدة بيانات أوراكل .

وسوف أسرد السؤال مرة أخرى على شكل نقاط .

* سأقوم باستعمال C# في الاتصال بالسيرفر , والدخول إلى قاعدة بيانات أوراكل

فهل لابد وأن أقوم بتثبيت أوراكل ديفيلوبر على جهازي في فترة التصميم , وكذلك عند توزيع النسخ النهائية على أجهزة الموظفين .

* هل هناك إعدادات في السيرفر , وأخرى في جهازي , قبل كتابة الكود البرمجي للاتصال بقاعدة البيانات على السيرفر .

* البرنامج أصممه على أنه لن يعمل من السيرفر , وإنما سوف يثبت بشكل مستقل عند كل عميل , ومن هناك سيتصل بالقاعدة على السيرفر .

* أتوقع أن ماأريده هو الجزء الثاني من إجابتك .

* عند محاولتي للاتصال بهذه الطريقة :

using System.Data.OracleClient;

OracleConnection conn = new OracleConnection("SERVER=mysrv;Data Source=ur/o1211@dev;");

conn.Open();

لكن وللأسف فلم يتم الاتصال وظهرت رسالة بعدم الحصول على SERVICE_NAME في CONECT_DATA

لك كل التحية والتقدير

#4
اقتباس
فهل لابد وأن أقوم بتثبيت أوراكل ديفيلوبر على جهازي في فترة التصميم , وكذلك عند توزيع النسخ النهائية على أجهزة الموظفين

أنا صراحتا لا أعرف شئ فى بيئة تطوير الأوراكل فلم أعلم عليه مطلقا و لكن لى أصدقاء كثيرين يعملون به و قد كنت ناقشتهم فى هذا الأمر و قد أكدوا لى أن من أكبر مساوئ الأوراكل أنه لابد أن تقوم بتنصيب كل الأدوات التى تعمل بها فى بيئة التطوير عند العميل تقريبا (أرى أن تفتح موضوع لهذه النقطة فى قسم الأوراكل)

و لكن الذى أنا متأكد منه أنه لابد من تنصيب أشياء كثيرة فى جهاز العميل و جهاز السيرفر لكى تتمكن من الإتصال

ثانيا أصلا أنت لابد أن يكون عندك DB Engine حتى تتمكن من الإتصال على قاعدة البيانات سواء كان فى جهاز العميل أو السيرفر (أيضا فى بيئة التطوير)

اقتباس
* هل هناك إعدادات في السيرفر , وأخرى في جهازي , قبل كتابة الكود البرمجي للاتصال بقاعدة البيانات على السيرفر .

أكيد هناك إعدادات و خصوصا فى السيرفر و لكن الامر هنا يختلف فأنا صراحتا صنعت مثل هذا الأمر من قبل على MS SQL SERVER و ليس بOracle

(ألا و هو عمل إتصال على DB موجودة فى سريفر عليه DominController و كان هناك عدة اعدادات منها أننى لابد أن أضيف الclient فى عدة مجموعات كانت يتم إنشاءها حينما يتم نصيب ال Sql Server)

اقتباس
* البرنامج أصممه على أنه لن يعمل من السيرفر , وإنما سوف يثبت بشكل مستقل عند كل عميل , ومن هناك سيتصل بالقاعدة على السيرفر .

* أتوقع أن ماأريده هو الجزء الثاني من إجابتك .

نعم, البرنامج الذى سوف يعمل على أجهزة العملاء لا يوجد به أى تغيير على ما أذكر لإنه سوف يعمل على أساس أن الإتصال محلى حيث أنه سوف يستخدم الحساب الذى تم إنشاءه له على السيرفر يعنى فى هذه الحالة سوف يكون Windows Auth.

بالنسبة للإتصال الذى لم ينجح فهذا يعود إلى أن حزمة الأوراكل ليست موجودة على جهازك

أنصحك أن تجرب الإتصال على جهازك أولا ثم بعد ذلك تجرب الإتصال على السيرفر

لا إله إلا الله محمد رسول الله

アッラー以外に神はなし。ムハンマドはアッラーの使徒である

#5

عزيزي , لقد حاولت كثيرا , وكانت آخر رسالة

اقتباس
ORA-12514: TNS: لم يتمكن المستمع من التعرف حاليًا على الخدمة المطلوبة في واصف الاتصال

طبعا بعد ماقمت بتنصيب أوراكل ديفولوبر .

واستخدمت الكود التالي :

using Oracle.DataAccess.Client;

string oradb = "Data Source=(DESCRIPTION="

+ "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver)(PORT=1521)))"

+ "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL)));"

+ "User Id=xx;Password=xx;";

OracleConnection conn = new OracleConnection(); // C#

conn.ConnectionString = oradb;

conn.Open();

#6

صدقنى , إلى هنا و لا أستطيع المساعدة لكونى لم أحاول الإتصال من قبل على قاعدة بيانات أوراكل

كل تعاملى كان مع MS SQL SERVER

إن لم يجيبك أحد هنا و إن شاء الله سوف تجد من يجيبك إذهب و أكتب السؤال فى منتديات الmsdn

حيث أن هذه تعتبر الدعم الفنى الحقيقى لمنتجات ميكروسوفت

بالتوفيق

لا إله إلا الله محمد رسول الله

アッラー以外に神はなし。ムハンマドはアッラーの使徒である

#7

شكرا لك عزيزي محمد نور

#8

راجع هذا الرابط تجد حل لمشكلتك ..

/index.php?showtopic=181560

اللهم أطل عمري وأحسن عملي واختم بالشهادة أجلي

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…