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

انشاء برنامج قواعد بيانات وربطه مع عدة اجهزة

بدأه مازن الهيال في 8 ديسمبر 2013 · 11 رد · 6,610 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اخواني الاعزاء انا صممت برنامج مطعم باستخدام السي الشارب وقواعد بيانات من نوع بيانات sql server لكن البرنامج مايعمل الا على جهاز واحد

اريد اسغل البرنامج لعدة مستخدمين في عدة اجهزة

السؤال :

ماهي الاشياء التي اضيفها على البرنامج

وماهو الكود الذي اريده

وكيف يتم ربط الكلاينت بسيرفر واحد

وقاعدة بيانات واحدة

ولكم مني جزيل الشكر وبارك الله فيكم

#2

هل الاجهزة مرتبطة بشبكة داخليه ؟

اذا كانت الاجابة بنعم فما نوع الشبكة ؟ Work Group أم Domain ؟

لان كل نوع له اسلوب في طريقة ضبط SQL Server

2

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#3
محمد فؤاد تركي كتب:

هل الاجهزة مرتبطة بشبكة داخليه ؟

اذا كانت الاجابة بنعم فما نوع الشبكة ؟ Work Group أم Domain ؟

لان كل نوع له اسلوب في طريقة ضبط SQL Server

نفس الموضوع انا محتاجه

الاجهزة حتكون مرتبطة بشبكة داخلية

كيف اعرف نوع الشبكه  Work Group أم Domain ؟

 

وياريت المتابعه لان الموضوع مهم

 

جزاكم الله خيرا

1

13598125002.gif

038c8ecfa8.gif

#4

من My computer --> Properties --> Change settings

 

تستطيع ان تعرف اذا كان جهاز العميل مرتبط بالشبكة عن طريق Member of work Group أو Domain

 

post-46243-0-62025500-1386564252_thumb.j

3

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#5

شكرا اخي الكريم

محمد فؤاد تركي و حامد محمد الوصيف

على المتابعة ...الشبكة work Group لكن ممكن نعرف الطريقتين كيف يتم اعدادها وربطها بالsql

وشكرا

#6

بارك الله فيك أخي الكريم

 

أولاً :- اذا كانت الشبكة المستخدمة هي Work Group يجب ان نتبع التالي

 

1- نتأكد من أن جهاز العميل يستطيع الوصول لجهاز السيرفر عن طريق الشبكة الذي يحتوي علي قاعده البيانات عن طريق عمل PING علي IP السيرفر من جهاز العميل أو الطرفيات

طريقة عمل PING علي سبيل المثال

افتح قائمة Start من جهاز العميل ثم RUN ثم اكتب 

PING 192.168.16.71 -t

حيث أن الــ IP المكتوب في المثال هو IP السيرفر طرفك فاذا كان الاتصال ما بين الجهازين سليم من المفترض ان تكون نتيجة هذه العمليه كما تشاهد 

 

post-46243-0-95489600-1386611138_thumb.j

 

أما اذا كان هناك خطأ في الاتصال بين الجهازين فستكون النتيجة Destination host unreachable أو سيظهر لك Time out

 

2- يتم التأكد من الــ Firewall علي جهاز الــــ server مغلق أو Disabled

3- يتم التأكد من TCP/IP مفعل أو Enabled

4- يتم التأكد من أن Named Pipes مفعل أو Enabled

وستجد هذه الاعدادات موجودة في SQL Server Configuration Manager

 

post-46243-0-77978100-1386611749_thumb.j

 

5- لابد ان تكون سلسلة سلسة الاتصال Connection String تحتوي علي SQL User LOGON أي لايمكن ان تتصل عن طريق Windows Authentication

لابد ان يكون الاتصال بطريقة SQL Authentication

 

أما اذا كان نوع الشبكة Domain فالمطلوب من طرفك ان تقوم وقت تنصيب SQL Server ان تربط SQL Server بحساب علي الــ Domain ويسمي Service Account

من خلال هذه الشاشة وقت تنصيب البرنامج فقط لا غير

* يتم كتابة الحساب المسمي بــ Service Account هنا

 

post-46243-0-91766100-1386612205_thumb.j

 

بالتوفيق للجميع

2

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#7

شكرا جزيلا لك استاذ 

محمد فؤاد تركي

 

ولكن عندى بعض الاستفسارات لكى اقدر استوعب هذا الموضوع

 

1 - مالفرق بين الشبكتين Work Group و Domain   ومتى استخدم كل واحدة منهم 

            2 - ما نوع السلك المستخدم للربط بين الاجهزة هل هو سلك انترنت عادى

                  حيث انى قمت بتوصيل جهازين من خلال سلك انترنت عادى ووضعت(  PING 192.168.16.71 -t    )  النتيجة Destination host unreachable 

           3 - بالنسبة للا sql  مانوع النسخة المطلوبة للتنصيب وهل سيتم تنصيبها على جهاز واحد ولا على كل الاجهزة

           4 - عندما اخترت طريقة الاتصال هذه SQL Authentication طلب منى LOGIN , PASSWORD

 

 

وشكرا جزيلا

−1

13598125002.gif

038c8ecfa8.gif

#8

أخي الفاضل

حامد

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

 

1- طريقة النظير للنظير (peer - peer) : وهو ما نطلق عليه WORKGROUP
وفيه تكون جميع الأجهزة على نفس المستوى من الصلاحيات . أي لا يكون هناك  server و client .. وبالتالي فلا يتوفر لدى مدير الشبكة التحكم والسيطرة الكاملتين على أجهزة الشبكة ومستخدميها .. حيث أن كل جهاز مستقل بمستخدميه.. ولا يستطيع مدير الشبكة التعامل مع جهاز من الأجهزة إلا إذا توفرت لديه بيانات الدخول  إليه والمخزنة على الجهاز نفسه
(Local Control) . و تتحمل الشبكة علي الاكثر 10 أجهزة فقط أو ربما 12 جهاز فقط
 
2- طريقة الخادم والعميل (Client - Server) : وهو ما نطلق عليه DOMAIN  
حيث يكون هناك جهاز سيرفر (server) يتم تنصيب الـ Active Directory عليه .. هذا الجهاز يتحكم في جميع صلاحيات الأجهزة ومستخدميها على الشبكة. وتكون صلاحيات مدير الشبكة مسيطرة على جميع الأجهزة فيها.. وهذا يزيد معامل الأمان والحماية داخل الشبكة ويوفر سهولة في التعامل مع الموارد داخلها .. وأيضا يسهل التعامل بين الأجهزة ومستخدميها داخل الشبكة.
 
أيضا الـ Domain يستطيع ان تكون الاجهزة المتصلة به بالمئات ويمكن التعامل مع أجهزة أخري ليست علي نفس الشبكة 
 
طبعا ما شرحنه اعلاة يستلزم خبرة في مجال الشبكات
 
النقطة الاخيرة في هذذ الجزئية انني اعطيت مثال علي IP الخاص بجهازي وطبعا عندما تقوم بعمل Ping عليه لابد ان يعطيك Destination host unreachable لان كل جهاز له IP خاص به
 
فبما يخص النقطة الثالثة يتم تنصيب برنامج SQL Server علي جهاز الخادم فقط وذلك في كلا النوعين من الشبكات ويتم الاتصال بالقاعده عن طريق ساسلة الاتصال
أما بخصوص نوع النسخة المطلوبة فأنت غير مرتبط بنسخة بذاتها فيمكنك العمل نسخة Express أو Enterprise
 
بخصوص سؤالك الاخير عندما تختار SQL Authentication b لابد ان تضع له اسم المستخدم والرقم السري الذي قمت أنت بانشائها من قبل في قائمة Security --> logins الموجوده في SQL Server
حتي تستطيع الدخول علي SQL server بمستخدم ورقم سري

تم تعديل هذه المشاركة بواسطة محمد فؤاد تركي في 10 ديسمبر 2013 في 07:24

3

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#9

شكرا اخي الكريم : المهندس محمد فؤاد تركي

عندي اسئلة :

1-هل لازم انصب sqlserver  على كل الكلاينت

2-اذا كانت الاجابة بنعم مالفئدة من ذلك وانا اسوف احدد مسار قاعدة البيانات الموجودة بالسيرفر

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

هل في الدوت نت نفس الطريقة ام مختلفة

ولك مني الدعاء

وبالله التوفيق

#10

أخي الفاضل

يبدو انك لم تقرأ مشاركتي الاخيرة جيدا

لقد جاوبت علي هذا السؤال في مشاركتي الاخيرة

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#11
محمد فؤاد تركي كتب:

 

أخي الفاضل

حامد

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

 

1- طريقة النظير للنظير (peer - peer) : وهو ما نطلق عليه WORKGROUP
وفيه تكون جميع الأجهزة على نفس المستوى من الصلاحيات . أي لا يكون هناك  server و client .. وبالتالي فلا يتوفر لدى مدير الشبكة التحكم والسيطرة الكاملتين على أجهزة الشبكة ومستخدميها .. حيث أن كل جهاز مستقل بمستخدميه.. ولا يستطيع مدير الشبكة التعامل مع جهاز من الأجهزة إلا إذا توفرت لديه بيانات الدخول  إليه والمخزنة على الجهاز نفسه
(Local Control) . و تتحمل الشبكة علي الاكثر 10 أجهزة فقط أو ربما 12 جهاز فقط
 
2- طريقة الخادم والعميل (Client - Server) : وهو ما نطلق عليه DOMAIN  
حيث يكون هناك جهاز سيرفر (server) يتم تنصيب الـ Active Directory عليه .. هذا الجهاز يتحكم في جميع صلاحيات الأجهزة ومستخدميها على الشبكة. وتكون صلاحيات مدير الشبكة مسيطرة على جميع الأجهزة فيها.. وهذا يزيد معامل الأمان والحماية داخل الشبكة ويوفر سهولة في التعامل مع الموارد داخلها .. وأيضا يسهل التعامل بين الأجهزة ومستخدميها داخل الشبكة.
 
أيضا الـ Domain يستطيع ان تكون الاجهزة المتصلة به بالمئات ويمكن التعامل مع أجهزة أخري ليست علي نفس الشبكة 
 
طبعا ما شرحنه اعلاة يستلزم خبرة في مجال الشبكات
 
النقطة الاخيرة في هذذ الجزئية انني اعطيت مثال علي IP الخاص بجهازي وطبعا عندما تقوم بعمل Ping عليه لابد ان يعطيك Destination host unreachable لان كل جهاز له IP خاص به
 
فبما يخص النقطة الثالثة يتم تنصيب برنامج SQL Server علي جهاز الخادم فقط وذلك في كلا النوعين من الشبكات ويتم الاتصال بالقاعده عن طريق ساسلة الاتصال
أما بخصوص نوع النسخة المطلوبة فأنت غير مرتبط بنسخة بذاتها فيمكنك العمل نسخة Express أو Enterprise
 
بخصوص سؤالك الاخير عندما تختار SQL Authentication b لابد ان تضع له اسم المستخدم والرقم السري الذي قمت أنت بانشائها من قبل في قائمة Security --> logins الموجوده في SQL Server
حتي تستطيع الدخول علي SQL server بمستخدم ورقم سري

 

 

شكرا جزيلا لك 

1

13598125002.gif

038c8ecfa8.gif

#12

السلام عليكم .شكرا لك استاذنا الغالي( محمد فوائد) بارك الله فيك
اولا- هل علي تغير نص الاتصال في البرنامج حتي يعمل في الشبكة الداخلية (Client - Server) ؟؟
لقد قمت بالتعديل علي نص الاتصال ادناه

sqlconnection cn = new SqlConnection(@"Data Source=AHMEDALSAFI-PC\SQLEXPRESS;Database=MY_DB;Integrated Security=false;User ID =user1;Password =12345");

هل هذه الطريقة الصحيحة لكتابة نص اتصال يسمح بعمل البرنامج في شبكة ؟
ثانيا- فلنفترض اني اريد البرنامج علي اكثر من جهاز هل علي تغير نص الاتصال في اي نسخة عند الاجهزة الكلاينت (بما يتناسب مع الuser والpassword في نص الاتصال )

ثالثا- بالنسبة لحالة كلمة Database اعلاه هل استبدلها ب Initial Catelog ام الاثنين يؤديان نفس الغرض؟

تم تعديل هذه المشاركة بواسطة ahmedalsafi في 20 أكتوبر 2014 في 20:37

وَقُلْ رَبِّي زِدْنِي عِلْماً

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

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

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

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

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