تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الربط بين جهازين لقاعدة بيانات واحده
#1
عندي برنامج بسطبه علي 2 جهاز وبعمل جهاز منهم هو السيرفر عن طريق اني بعمل لفولدر البرنامج اللي فيه قاعدة البيانات مشاركة علي الشبكه.وعامل جملة اتصال مرنة.بحيث اني بروح علي الجهاز التاني واختار مسار قاعدة البيانات علي الجهاز السيرفروبيتم حفظها في اعددات البرنامج.وهكذا بقوم الربط.هل هذه لطريقه صالحه ام توجد طريقه افضل.
الرد }}}
تم الشكر بواسطة:
#2
بالطبع لا يمكنك استعمال هذة الطريقة بسبب ال blocking
يعني اذا كان احد الاجهزه فاتح الاتصال والجهاز الاخر قام باذافة بيانات او تحديثها سيخسر البيانات 
ولن تخزن بقاعده البيانات.

قم باستخدام قاعدة بيانات منفصله.

الاخ الجوكر قام بشرح الطريقه هنا تفضل


الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#3
شكرا لك اخي .قرات هذه الطريقه ولكن تواجهني فيها مشكلتين.اولا ان البرنامج يعتمد في طريقة حماية بحيث لايعمل الا علي جهاز واحد ويتم ذذلك عن طريق التحقق من شئ في قاعدة البيانات.ثانيا.عند عمل split لقاعدة البيانات ينتج نسخه من قاعدة البيانات مفتوحه ليس عليها باسورد النسخه الاصليه.
كيفية الحل لتلك المشكلتين
الرد }}}
تم الشكر بواسطة: 2003amin
#4
هل لي ان استفسر ان كان بالامكان ان تستخدمو sql server يكون مثبت باحد الاجهزة المهيأ ليكون سيرفر ويكون الاتصال به عن طريق الـIp.
الرد }}}
تم الشكر بواسطة: asemshahen5 , elgokr
#5
شكرا اخي سعود.لا اعتقد انه من السهل التغير الان من اكسس الي sql server
الرد }}}
تم الشكر بواسطة: سعود
#6
(21-06-19, 11:30 PM)makky كتب : شكرا اخي سعود.لا اعتقد انه من السهل التغير الان من اكسس الي sql server

طيب لو الجهاز مثبت عليه سيرفر ويندوز ويدعم asp.net اليس من الاسهل برمجة وسيط بين ملف القاعدة Access  والطلبات لها ؟.
الوسيط هو WebService وهو عبارة عن دالة (حسب تعبيري الخاص) لو تبحث باليوتيوب عن كيفية الاتصال بقاعدة البيانات عبر  هذه الانفة الذكر  قد تميل لهذه الفكرة لانها افضل من مشاركة ملف معين على الشبكة.
لما تنشيء ويب تضع ملف الاكسس ضمن مجلد App_Data  وتتصل وتجري كافة الاجراءات بشكل عادي جدا على العميل فقط ارسال طلبات واستقبال الرد.
الرد }}}
تم الشكر بواسطة:
#7
(21-06-19, 11:18 PM)makky كتب : شكرا لك اخي .قرات هذه الطريقه ولكن تواجهني فيها مشكلتين.اولا ان البرنامج يعتمد في طريقة حماية بحيث لايعمل الا علي جهاز واحد ويتم ذذلك عن طريق التحقق من شئ في قاعدة البيانات.ثانيا.عند عمل  split  لقاعدة البيانات   ينتج نسخه من قاعدة البيانات مفتوحه ليس عليها باسورد النسخه الاصليه.
كيفية الحل لتلك المشكلتين

اخى الكريم makky


اولاً : مع قواعد البيانات access لا يمكن جعل اكتر من مستخدم يعمل عليها فى ان واحد
لذلك يجب تطبيق الشرح الذى قمت به بتوضيح كيفية جعل الـ access يعمل على اكثر من مستخدم

ثانياً : بخصوص عمل Split كل ما عليك فعله هو فتح قاعدة البيانات الجديدة المخصصة من الشرح
ووضع لها كلمة المرور طبقاً للقاعدة الرئيسية حتى يعمل عليها بناءاً على كود الاتصال فى البرنامج

ثالثاً لطريقة الحماية فى هذه الامور
يفضل استخدام طريقة تفعيل من خلال تسجيل اسم الجهاز 
التى تحتوى عليها قاعدة البيانات الرئيسية بالشبكة

فمثلاً الجهاز الذى عليه قاعدة الباينات الرئيسية كمثال المسار التالى
PHP كود :
\\myname-pc\data\filedata.accdb 

وهو نفسه كالتالى
PHP كود :
\\192.168.106\data\filedata.accdb 
فهنا عليك تسجيل اسم الجهاز والتعامل به بدلاً من الـ IP
بحيث بدلاً من عمل كود تفعيل يكون اسم الجهاز يسجل بطريقة مخصصة منك فى قاعدة البيانات مثلاً او فى ملف ما بمجلد البرنامج

فانت الان عند عمل كود الاتصال بقاعدة البيانات تقوم بالتالى كمثال
كود :
   Dim str As String = "provider=microsoft.ace.oledb.12.0;data source=\\myname-pc\data\filedata.accdb"

فكل ما عليك فى شاشة تسجيل الدخول مثلاً

فى حدث اللود فى اول سطر اضف
كود :
       If Not str.Contains("myname-pc") Then Application.Exit()

بكده اذا كان اسم الجهاز اختلف او قام الشخص بنقل البرنامج وقاعدة البيانات على جهاز اخر
سيتم اغلاق البرنامج كلما تم تشغيله 

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

وما اشير اليه هنا فقط كل ما عليك البحث عن
PHP كود :
machine serial number 

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: makky
#8
شكرا لحضرتك اخر الجوكر.لكن استفسار بسيط ان امكن.دلوقت فرضا عندي قاعدة البيانات اسمها dab بعد ما عملت ليها split اصبح هناك قاعدتين واحده dab_be وقاعدة اخري dab. اي قاعدة ستكون علي الجهاز السيرفر واي قاعدة ستكون علي الجهاز الثاني وهل سيتم تغير اسم القاعدة من dab_be الي dab حتي تتناسب مع الاسم في جملة الاتصال.وثالثا بالنسبه لكود الاتصال بالنسبه للجهاز الثاني هل سيكون هو المسار الافتراضي الذي بني عليه البرنامج ام مسار الجهاز السيرفر.اسف للاطالة وشكرا لسعة صدرك اخي الكريم
الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#9
(22-06-19, 09:35 AM)makky كتب : شكرا لحضرتك اخر الجوكر.لكن استفسار بسيط ان امكن.دلوقت فرضا عندي قاعدة البيانات اسمها dab  بعد ما عملت ليها split  اصبح هناك قاعدتين واحده dab_be   وقاعدة اخري  dab.  اي قاعدة ستكون علي الجهاز السيرفر واي قاعدة ستكون علي الجهاز الثاني وهل سيتم تغير اسم القاعدة من dab_be   الي dab حتي تتناسب مع الاسم في جملة الاتصال.وثالثا بالنسبه لكود الاتصال بالنسبه للجهاز الثاني هل سيكون هو المسار الافتراضي الذي بني عليه البرنامج ام مسار الجهاز السيرفر.اسف للاطالة وشكرا لسعة صدرك اخي الكريم

الشكر لله والحمد لله

والحمد لله على كل حال

بخصوص الاستفسار الاول
انسى المسميات نهائياً وتعال بكل بساطة طبق التالى
افتح الملف الاول من قاعدة البيانات 
واذا كان الملف الذى فتحتى تحتوى على جداول بايقونة كالتالى 
فهذا الملف المطلوب استخدامه لدى المستخدم على كل جهاز
واما اذا كان الملف عند فتحه وكان ايقونة الجداول بهذا الشكل كالتالى 
فهذا الملف سيكون على الشبكة وليس باجهزة المستخدمين


ولتكون الصورة اوضح معك
من يحمل هذه الجملة _be فهو من تكون على الشبكة
واذا قمت بفتح هذا الملف ستجد الايقونات للجداول بداخل الملف بهذا الشكل   

بينما الاسم الصحيح الافتراضى للملف لديك هو من سيتم نسخة على كل جهاز
لدي كل مستخدم واذا قمت بفتح هذا الملف ستجد الايقونات للجداول بهذا الشكل 
اتمنى ان تكون الصورة هنا وضحت واصبحت بدون اى مشكلة

بخصوص الاستفسار الثاني

هل يمكنك تغيير اسم قاعدة البيانات ؟
نعم يمكنك بكل تاكيد تغيير الاسم الى ما تريد ان يكون ولكن تذكر 
اذا كان التعديل على الملف التى لدى المستخدم فهنا لا يوجد اى مشكلة مهما كان الاسم
ولكن اذا تم التعديل على الملف الموجود على الشبكة فهنا ستحتاج الى تعديل على الملفات
لدى كل مستخدم لانك ستجد ان عند فتح قاعدة البيانات لديهم الجداول لا تعمل فكل ما عليك فعله
هو تطبيق هذا الجزء من الشرح فى موضوعي بهذا الموضوع اتبع الشرح من عند هذه الصورة


بخصوص لتطبيق ما هو برقم 2 لاتمام تعديل اسم الملف الذى تم تعديل اسمه
وتذكر بان قاعدة البيانات التى على الشبكة لم يكن لها اى صلة بالبرنامج او بكود الاتصال
فيمكنك ان تجعلها اى اسم مثل احرف وارقام ورموز كمثال لان الملف الذى سيكون بكود الاتصال
هو الملف الذى يتواجد على جهاز المستخدم بينما الملف الموجود على جهاز المستخدم هو كوسيط
سيقوم بارسال اى تنفيذ يتم من اضافة وتعديل وحذف وعرض بيانات الى القاعدة البيانات الرئيسية الموجودة على الشبكة

بخصوص الاستفسار الثالث

الرجاء الرجوع الى الموضوع مجدداً واتمنى قراءته مجدداً جيداً لان الاجابة هنا
إقتباس :كيف سيكون كود الاتصال بقاعدة البيانات من خلال البرنامج ؟

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

ولا تتردد باى سؤال او استفسار عن اي شي

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:
#10
جزاك الله خيرا اخي. المشكله التي واجهتني الان عند عمل باسور للeb واجي اعملrelink للجداول بيقولي not invalid password علي الرغم انها نفس الباسور فيfe
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  استعلام من عدة جداول لقاعدة بيانات اكسس Adel27213 1 702 07-11-23, 08:27 AM
آخر رد: justforit
  [SQL] استفسار عن طريقة تحزم قواعد بيانات MSSQL مع البرنامج VB.NET2019 salemq 2 530 18-05-23, 03:02 AM
آخر رد: سعود
  ما معني بيانات تقع بين الرمز[] في حقل في داتا بيس bassant 3 672 03-04-23, 11:53 PM
آخر رد: sanyor77
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,009 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,799 07-11-22, 10:27 PM
آخر رد: Am7
  [عنوان معدل]حفظ بيانات listbox fhad24 36 12,240 08-10-22, 06:55 PM
آخر رد: رضوان الجماعي
  مشكلة ظهور بياانات حقلين في قاعدة بيانات على شكل علامة استفهام bassant 5 1,632 17-10-21, 02:07 PM
آخر رد: abubasilIraq
  كيف افتح قاعة بيانات اكسس بسام محمدغانم 1 1,404 04-10-21, 02:52 AM
آخر رد: اسلام الكبابى
  تحويل multiline text الى single line في عمود في قاعدة بيانات sql server bassant 0 956 07-09-21, 04:36 PM
آخر رد: bassant
  [Acces2010] عمل قاعدة بيانات لنظام غيابات الطلبة hassan karim 1 1,918 31-08-21, 04:47 AM
آخر رد: a7med saba

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم