![]() |
|
شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم أسئلة واستفسارات الأعضاء - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=94) +--- قسم : مايكرسوفت أكسيس Microsoft Access (http://vb4arb.com/vb/forumdisplay.php?fid=170) +--- الموضوع : شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية (/showthread.php?tid=27508) |
شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - elgokr - 18-11-18 السلام عليكم ورحمة الله وبركاته
من فترة تحدثت باننى اريد عمل شرح مفصل
فى كيفية تكوين قاعدة بيانات تعمل على تعدد الاجهزة على الشبكة المحلية
دون ان تسبب اى مشكلة لدى البرامج التى ترتبط بها
واليوم ساوضح شرح كتابتاً مع الصور كيفية اتمام ذلك بكل التفاصيل
واتمنى ان يكون الشرح بالنهاية مبسط وواضح لدا الجميع الذى يقوم بالتعامل مع قواعد بيانات Access
فى البداية عند اتمام الانتهاء من انشاء قاعدة البيانات والبرنامج المرتبط به
وعند نسخ البرنامج لدا العميل سيتطلب اعمل مجلد على جهاز محدد سيكون وظيفته
مشاركة قاعدة البيانات دائماً من خلال الشبكة خلينا نسمى هذا الجهاز كونه الـ Server
فهنا لاتمام انشاء المجلد فسيتم عمل التالى
لنقول ان الجهاز تحت مسمى Server لديه بارتشن D
وتذكر يجب ان يتم انشاء الخطوات التالية بعيداً عن بارتشن C تجنباً فقداً قاعدة البيانات
الان ستقوم بانشاء مجلد تحت اسم وليكن DataBase
وبعد الانتهاء من انشاء المجلد يوضع به نسخة من قاعدة البيانات الرئيسية للبرنامج
من ثم تاتى على المجلد وتقوم بعمل كلك يمين والضغط على خصائص / Properties
ستظهر معنا الشكل التالى
الان من هذه القائمة ستقوم بالضغط على جملة Sharing / مشاركة
سيظهر معنا الشكل التالى فعلك اتمام الضغط بنائاً على ترتيب الارقام بالصورة
الان سيتم الضغط على زر Advanced Sharing كما فى الصورة المشار عليها برقم 1
عند اتمام ذلك ستفتح شاشة جديد عليك التركيز وتطبيق كل ما هو فى الصورة تماماً
1- تنشيط Sharing this folder 2- قم بكتابة الاسم الذى يناسبك ولكن تذكر ان يكون باول الجملة ونهايتها علامة $ مهمة جداً 3- قم بتحديد عدد المستخدمين الذى يتمكن من دخول المجلد فى وقت واحد يمكنك ان تكتب كما تشاء الاهم ان لا يكون اقل من عدد مستخدمى قاعدة البيانات فى وقت واحد 4- الضغط على زر Permissions لتفتح معنا الشاشة التالية واتمام كما فى الصورة 4- [1]- التاكد من وجود Everyone من ثم تحديدها 4- [2]- تنشيط خيار Full Control حتى يقوم بتنشيط باقى الخيارات 4- [3]- الضغط على زر OK 5- الضغط على زر OK بعد الانتهاء من الخطوات السابقة ستتحول معنا الشاشة الرئيسية خاصة الخصائص / Properties على هذا الشكل
كل ما عليك متابعة الشرح طبقاً للارقام بالصورة التالية
1- الضغط على زر Share... لتفتح معنا شاشة Network access كما فى الصورة التالية 1- [1]- الضغط على علامة ▼ لتعرض القائمة واتمام اختيار منها الخيار Everyone 1- [2]- الضغط على زر Add حتى تعرض جملة Everyone فى القائمة كما مشار عليها برقم 3 1- [3]- بعد التاكد بوجود جملة Everyone ستقوم بتطبيق الخطوة التالية 1- [4]- الضغط على علامة ▼ لتفتح القائمة الجانبية من العلامة واختيار الخيار Read/Write 1- [5]- الان قم بالضغط على زر Share بعد الانتهاء سيعرض معنا شاشة تحتوى على زر Done يتم الضغط عليها 2- الضغط على زر Close وبكده يتم انتهاء عمل مشاركة المجلد على الشبكة بعد الانتهاء من الشرح السابق كل ما عليك هو جعال الجهاز تحت مسمى Server
مخصص له IP يدوياً وليس تلقائي فمثلاً IP الاعتيادية هو 192.168.1.1 وهو خاص بالراوتر او احياناً يكون 192.168.1.100
كل ما عليك ان تجعل الجهاز بهذه البيانات PHP كود : 192.168.1.240بخصوص الـ DNS يمكنك ان تجعلها على هذا الشكل PHP كود : 208.67.222.222بعد الانتهاء من كل هذا الامر فالان عليك اختبار الدخول على الجهاز من خلال الشبكة
من خلال فتح اى مجلد وكتابة الشكل التالى
من خلال كتابة هذا الجملة فى عنوان اى مجلد بالاعلى PHP كود : \\192.168.1.240 تذكر هذا الرقم الخاص بالجهاز الذى تم تخصيصه له وهو خاص بحهاز الـ Server
بطبيعة الحال عند فتح الجهاز على الشبكة من خلال هذا المسار ستجد ان المجلد الذى تم مشاركته والذى يحتوى على قاعدة البيانات
غير موجود او باصح هو غير مرئي ولاتمام فتح هذا المجلد الغير مرئي يجب ان تجعل المسار على هذا النحو PHP كود : \\192.168.1.240\$DataBase$ هل تتذكر عندما تم تسمية المجلد على الشبكة وتم توضيح باهمية وجود $ ببداية ونهاية الاسم
الوظيفة من علامة $ هنا هو اتمام اخفاء المجلد على الشبكة ويتم الدخول والوصول اليه يدوياً من خلال الكتابة
كما تم حالياً وفتح معنا المجلد الذى يحتوى على قاعدة البيانات الى الان بما انك وصلت معنى الى هنا
فاصبح كل شئ الان بسيط فى الخطوات التالية هو عمل الربط قاعدة البيانات لكل مستخدم
والتى ستكون مركز قاعدة البيانات الرئيسية على هذا المسار بالشبكة
طيب ناتى الان لشرح قاعدة البيانات الـ Access
الان بعد الانتهاء من كل ما سبق سناتى على مجلد البرنامج المصمم من قبلك والمنتهى
والذى يعمل عليه شخص واحد فقط حتى الان ولكن لا يمكن جعل اكثر من مستخدم فى وقت واحد
وكل ما علك هو فتح قاعدة البيانات عادى جداً اى كانت نوع قاعدة البيانات (.accdb) أو (.mdb) لا يوجد مشكلة من ذلك
فقط افتح قاعدة البيانات ومن ثم من القائمة بالاعلى Database Tools كما هو موضح بالصورة التالية
1- فتح قائمة Database Tools 2- اختيار خيار Access Database لتفتح معنا الشاشة التالية كل ما علك الضغط على زر Split Database
لتفتح معك شاشة لحفظ قاعدة البيانات الجديد وركز هنا
بان مكان الحفظ سيكون من خلال فتح المسار التالى اولاً PHP كود : \\192.168.1.240\$DataBase$ من ثم حفظ قاعدة البيانات الجديدة بها ملحوظة الاسم الذى سيتم اختياره للحفظ
سيتم اعتماده دائماً دون التعديل عليه مجدداً بعد الان تذكر هذا جيداً
الان لنقول انه تم حفظ قاعدة البيانات الجديدة على هذا المسار بهذا الاسم PHP كود : \\192.168.1.240\$DataBase$\Database_be.accdb الان ستلاحظ ان قاعدة البيانات التى بمجلد البرنامج عند العميل اصبح الجداول متغيرة لتصبح على هذا الشكل
حيث انها تحتوى على علامة ► قبل ايقونة الجدول اذا كان الشكل فعلياً معك بهذا الشكل
فالان انت اصبحت على النهاية تماماً من انهاء الامر ويبقي خطوة واحدة فقط
الان لديك قاعدة البيانات الرئيسية او الرسمية فى المسار جهاز الـ Server على الشبكة
ومكنها الرئيسي بالجهاز هو بارتشن D بمجلد DataBase
كل ما يمكن فعله كل اسبوع او كل شهر عمل ضغط لهذا المجلد كا فكرة النسخة الاحتياطية
طيب الان محتاج اشغل البرنامج على جهاز اخر ليعمل عليه مستخدم تانى
كل ما عليك هو نسخ مجلد البرنامج الاعتيادى على جهاز المستخدم الاخر بدون اى مشكلة
ولكن ستقوم بحذف قاعدة البيانات الرئيسية من المجلد واخذ النسخة التى بالجهاز المستخدم الاول
التى تحتوى على هذا الشكل
لايقونة الجداول داخل قاعدة البيانات وبكده ستكون انهيت كل شئلا يلزم احتفاظ بنسخة احتياطية من هذه قاعدة البيانات حيث انها عبارة عن Shortcut للجداول داخل قاعدة البيانات
كما لو قمت بعمل Shortcut لاى ملف على الجهاز وليكن Notepad وتجد اى نص تكتبه فى هذا الملف يسمع فى الملف الرئيسي
فهو تماماً بنفس الفكرة كلياً لكن ستحتفظ بهذا الملف منه نسخة فقط لهذا العميل بحيث اذا تم انشاء جهاز جديد لمستخدم جديد
ستقوم بوضع هذا الملف الخاص بقاعدة البيانات بجانب البرنامج لدى المستخدم بدلاً من قاعدة البيانات الرئيسية التى تتواجد بجانب البرنامج
طيب ملحوظة سريعة كده يجب الانتباه اليها
لنقول ان حدث مشكلة فى جهاز الـ Server وتم اعادة تثبيت نسخة جديدة
وبطبيعة الحال تم فقدان مسار المجلد على الشبكة وعليك اعادة الشرح من الاعلى من جديد
لكن لا تريد اعادة تهئية قاعدة البيانات من جديد وتريد عمل على نفس قاعدة البيانات الرئيسية و لدى المستخدم
لكن نسيت اسم المجلد الذى كان على الشبكة بمعنى الان انا عامل اسم المجلد على الشبكة بهذا الاسم PHP كود : \\192.168.1.240\$DataBase$ لكن عند تنفيذ الشرح قمت بتغيير اسم المجلد على الشبكة ليكون مثلاً PHP كود : \\192.168.1.240\$Data$ لكن الاسم على مسار بارتشن D هو نفس الاسم الاعتيادى فى الشرح وهو DataBase
فكيف تتذكر هذا الاسم لتعيد تسميته نفسه حتى يعمل نسخ قاعدة البيانات عند كل مستخدم دون اعادة تهيئتها من جديد
كل ما عليك فعله الاتى عليك فتح اى قاعدة بيانات لدى اى مستخدم والتى تحمل شكل
من ثم تاتى على قائمة External Data كما فى الصورة
1- فتح قائمة External Data 2- الضغط على خيار Linked Table Manager لتفتح معنا الشاشة التالية طبعاً مكان الرقم 127.0.0.1 سيكون لديك فى الشاشة الارقام 192.168.1.240 كما خصصناها فى الشرح بالاعلى
وستجد بوسط المسار جملة $DataBase$ وهو اسم المجلد على الشبكة الذى قمت بها اخر مرة
طيب خلينا نقول ان يوماً ما اصبح هذا المسار يدخل عليه اشخاص وتريد ان تقوم بتغيير اسم المجلد على الشبكة
من اسم $DataBase$ الى وليكن $Access$ وتريد تحديث المسار لدى قاعدة البيانات المستخدمين فماذا ستفعل
بنفس الشاشة بالاعلى ستقوم بتظليل كلاً من المسميات الجداول من خلال الضغط على زر Select All
ومن ثم تنشيط Always prompt for new location بعد ذلك الضغط على زر OK كما هو موضح فى الصورة التالية
بعد الضغط على OK
ستجد انه يطلب منك تحديد قاعدة البيانات على المسار الجديد ويجب ان يكون من خلال الشبكة ليصبح على هذا الشكل كمثال PHP كود : \\192.168.1.240\$Access$\ من ثم اختيار قاعدة البيانات التى بالمجلد والضغط على زر Open
لتجد بعد ذلك بانه تم تحديث مسار قاعدة البيانات الجديدة فكل ما عليك هو الضغط على زر Close من الشاشة
من ثم اغلاق قاعدة بيانات المستخدم ونسخها على باقى اجهزة المستخدمين للبرنامج
والى هنا اكون انهيت الشرح كاملاً
واتمنى ان لا اكون اخطاءت او سهوت عن شئ
وان يكون الشرح مبسط وموضح كل التفاصيل التى قد تواجهك فى محاولتك اول مرة
وانهى بالنهاية لمن سيكون لديك سؤال قد يكون موحد على الاغلب وهو
-----------------------------------------------------------
كيف سيكون كود الاتصال بقاعدة البيانات من خلال البرنامج ؟ج: الكود المستخدم نفسه وسيكون المسار هو المسار الافتراضى بجانب البرنامج الاعتيادى وليس مسار الشبكة فانتبه لذلك. -----------------------------------------------------------
والى هنا اختم الحديث
واتمنى ان يسامحنى الجميع على التقصير وعدم عمل دروس وتنزيل شروحات من وقت لاخر
ويرجع الامر لسبب بعض الضغوط لدي وكلما توفر لى وقت ساقوم بعمل شرح جديد ودروس تفيد الجميع ان شاء الله
مرفق الصور المستخدمة فى الشرح + الشرح كاملاً PDF
تحياتى للجميع
وتمنياتى لكم التوفيق الدائم
RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - hassan 14 - 23-11-18 مشكور الاخ الكريم ربي يجعلها في ميزان حسناتك RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - elgokr - 25-11-18 (23-11-18, 09:32 PM)hassan 14 كتب : مشكور الاخ الكريم ربي يجعلها في ميزان حسناتك الشكر لله والحمد لله
والحمد لله على كل حال
تقبل الله منك الدعاء ولنا جميعاً ان شاء الله
تحياتى لك
وتمنياتى لك التوفيق
RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - عبد العزيز البسكري - 25-11-18 السلام عليكم و رحمة الله و بركاته بارك الله فيك .. تم التقييم للموضوع المميز لا أعرف كيف فاتني هذا الموضوع و لم أنتبه له الا الان جزاك الله خيرا .. و اثابك جنات النعيم ان شاء الله تحياتي و تقييماتي RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - elgokr - 26-11-18 وعليكم السلام ورحمة الله وبركاته
مرحباً اخى عبد العزيز البسكري
لا عليك اخى فالجميع متركز على قسم اسئلة .Net
فمن النادر وجود البعض بالنزل للاسفل ليتم الاطلاع على الاقسام الاخري
لذلك لا ينتبه البعض للمواضع والبعض الاخر يقوم بانشاء
السؤال او غيره فى اقسم الغير مناسب ويرجع لقلة الحركة فى الاقسام الاخري
لذلك احببت ان اضع هذا الموضوع طلب احد الاعضاء بالسابق
حتى يعم الحركة وجعل الجميع الانتباه الى الاقسام الاخري
تقبل الله منك الدعاء لى ولك وللجميع بامر الله
تحياتى لك
وتمنياتى لك التوفيق
RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - dametucorazon - 26-11-18 بوركت أخي الفاضل وعودا حميدا RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - dubai.eig - 26-11-18 بارك الله فيك مجهود تشكر عليه ما شاءالله تبارك الله طريقه احتاج لها بس عندي سؤال في حالت الاتصال بالقاعدة هل هذه الطريقه صحيحه كود : Dim con As New SQLiteConnection("Data Source= \\192.168.1.240\$Accídb$\DB1.s3db")RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - DK-x - 26-11-18 ايضا ممكن ترفع القاعدة على موقع برابط مباشر وتعمل نفس العمل لكن بشكل اوسع
RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - elgokr - 26-11-18 (26-11-18, 10:07 AM)dametucorazon كتب : بوركت أخي الفاضل وعودا حميدا تسلم اخى dametucorazon
تحياتى لك
وتمنياتى لك التوفيق
(26-11-18, 01:13 PM)dubai.eig كتب : بارك الله فيك مجهود تشكر عليه ما شاءالله تبارك الله فى كود الاتصال تم التوضيح بالشرح بالاعلى
انه سيتم عمل كود الاتصال الاعتيادى وهو بجانب البرنامج وليس مسار الشبكة
وتذكر ان قواعد بيانات Sql تختلف كلياً عن شرح Access
تحياتى لك
وتمنياتى لك التوفيق
(26-11-18, 07:53 PM)DK-x كتب : لا طبعاً اخى DK-x
لا يمكنك فعل ذلك لان امور رفع على موقع الكتروني واستخدام قاعدة بيانات من نوع Access
ستحتاج الى ان يكون الرابط عبارة عن FTP ويحتوى على اسم المستخدم وكلمة المرور للدخول على FTP
حتى تتاح له عملية القراءة والكتابة لان الروابط الاعتيادية فقط عبارة عن قراءة فقط اى لا يمكنك تنفيذ اكواد
التعديل و الحذف والاضافة
وطبعاً من الخطر جداً وضع بيانات FTP حتى واذا كان مخصص على مجلد قاعدة البيانات فقط
لان من السهولة استغلالها من خلال رفع ملف شيل والتحكم فى جميع ملفات الموقع
الامر سيتطلب لاتمام عمل مشاركة خارج الشبكة
هو اتمام عمل بورتات مخصصة وتخصيصها بالراوتر بالجهاز الخاص بقاعدة البيانات
والبورت عبارة عن الشير للتعامل مع المجلد من الخارج كما لو ان الجهاز بداخل الشبكة
ولذلك يفضل التعامل مع قواعد بيانات من نوع Sql Server او Mysql
حتى تتمكن من اتمام عمل ما تشير اليه بكل سهولة وبدون اى خطورة
تحياتى لك
وتمنياتى لك التوفيق
RE: شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية - ناجح احمد - 10-12-18 ما شاء الله شرح اكثر من رائع من مبدع اكثر روعه استفدت من شروحاتك وردودك ومشاركاتك . شكرا لك |