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

استفسار في تشغيل برنامج من خلال شبكة

مغلق
بدأه rafik_172006_r في 21 يناير 2008 · 16 رد · 1,925 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندي برنامج شئوون موظفين كبير بلغة vb6 وقواعد بيانات sql server 2000 اسمها emp وعندي جهاز سيرفر مثبت عليه windows 2003 server موجود على شبكة داخلية lan باسم rafeek وعندي جهاز مستخدم على نفس الشبكة اسمه user1 وبستخدم الأسلوب ado وجملة الربط كالتالي

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=emp

والبرنامج شغال تمام

أنا محتاج اشغله من على جهاز المستخدم user1

أعمل إيه ؟

وتكون جملة الربط إزاي؟ وهل هناك إعدادات لبرنامج Sql server 2000 لازم تكون موجودة؟

وجزاكم الله خير على الردود

تم تعديل هذه المشاركة بواسطة rafik_172006_r في 21 يناير 2008 في 22:37

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#2

اولا نرجو البحث لأن السؤال مكرر

ثانيا تحتاج الى تحديد اسم السيرفر data source=rafeek

وانتهى الامر

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

او يمكنك استبدال بدل trusted connection أستخدام مستخدم من ال SQL server مثل sa ولمعرفة كيفية الاتصال انظر الموقع

http://www.connectionstrings.com/

وانا اسف على الاختصار والسبب ان الموضوع مكرر وبالبحث تجد التفاصيل

#3

في حاجه في برنامج السيكوال سيرفير2005 اسمها

SQL Server Studio Manegment

تحدد الداتابيز الخاصه بيك و بعدين تدوس كلك يمن عليها و تختار الخصائص و من الخصائص هتلاقي حاجه اسمها

Permessions

ادخل عليها و ابدأ ضيف ال

Clients

بتوعك و تحدد لكل واحد كمان يأكسس على ايه بالضبط بالنسبه لكل جدول

ويبقى بلغنا ايه الي حصل معاك

IT'S EASY, IF YOU TRY

#4
TareqVB كتب:
اولا نرجو البحث لأن السؤال مكرر

ثانيا تحتاج الى تحديد اسم السيرفر data source=rafeek

وانتهى الامر

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

او يمكنك استبدال بدل trusted connection أستخدام مستخدم من ال SQL server مثل sa ولمعرفة كيفية الاتصال انظر الموقع

http://www.connectionstrings.com/

وانا اسف على الاختصار والسبب ان الموضوع مكرر وبالبحث تجد التفاصيل

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

هل جملة الربط المستخدمة تختلف من جهاز السيرفر عن جهاز المستخدم . الاستفسار ده للتوضيح علشان لو الجملة واحدة في الحالتين أحاول أشغله الأول على السيرفر وبعدين أحاول أشغله من جهاز المستخدم

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

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#5
BOGY كتب:

في حاجه في برنامج السيكوال سيرفير2005 اسمها

SQL Server Studio Manegment

تحدد الداتابيز الخاصه بيك و بعدين تدوس كلك يمن عليها و تختار الخصائص و من الخصائص هتلاقي حاجه اسمها

Permessions

ادخل عليها و ابدأ ضيف ال

Clients

بتوعك و تحدد لكل واحد كمان يأكسس على ايه بالضبط بالنسبه لكل جدول

ويبقى بلغنا ايه الي حصل معاك

مشكور أخي BOGY على تفاعلك مع الموضوع

لكن عندي استفسار

هل لو نزلت sql2005 هل فيه اختلاف كتير بينه وبين 2000 يعني هاحتاج أصمم الداتا من تاني ولا أعمل ليها إرفاق عادي لأني ما جربتش خالص 2005 وهل يغني الحل بتاعك عن الدخول في تعقيدات السيرفر أم كل إلى أحتاجه إن أنشئ مستخدم على السيرفر فقط ياريت توضح الخطوات بالتفصيل

بصراحة تعبت من الموضوع ده ووصلت لآخري

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

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#6

السلام عليكم ...

أنا لدي نفس المشكلة ولكنني استخدم لغة دلفي 7 مع قواعد بيانات SQL Server Express 2005

moslimbag8.gif

------

saaid.jpg

#7

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

اولا يجب ان تجرب على السيرفر والمفروض على اجهزة الكلينت ان يعمل ايضا بنفس المواصفات

وبالنسبة ل 2000 و 2005 هي نفس الفكرة لا اختلاف بالنسبة لك

#8
أحمد_ليبيا كتب:
السلام عليكم ...

أنا لدي نفس المشكلة ولكنني استخدم لغة دلفي 7 مع قواعد بيانات SQL Server Express 2005

الحمد لله وجزاكم الله خير انا جربت إلى قولتولي عليه والحمد لله البرنامج الآن شغال على الشبكة

وإن شاء الله هاكتب الحل بالتفصيل علشان الكل يستفيد

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#9

:rolleyes: خطوات الحل للمشكلة كما يلي علشان الكل يستفيد واتمنى يكون الحل واضح ومباشر

1 - ركبت ويندوز 2003 سيرفر النسخة القياسية stander

2 - ركبت نسخة sql 2000 بدون كلمة مرور أو باسوورد

3 - عملت إرفاق للقاعدة البيانات

4 - وجملة الربط كالتالي

Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=employe_door;Data Source=rafik

5 - جهاز المستخدم عليه ويندوز إكس بي وأنشات للحساب كلمة مرور ودخلته على الشبكة

6 - أنشأت حساب على السيرفر ببيانات المستخدم وكلمة المرور واعطيت له الصلاحيات

7 - مكنت جهاز المستخدم من الدخول على السيرفر

8 - أنشات حساب بنفس بيانات المستخدم داخل sql2000 القسم Security ثم logon

9 - عملت مشاركة لمجلد البرنامج على السيرفر

10 - دخلت على نفس المجلد من جهاز المستخدم وشغلت البرنامج والبرنامج اشتغل والحمد لله

ولكن للأسف فيه مشكلة ظهرت وهي إن إذا فتحت نفس الشاشتين في نفس الوقت يقف البرنامج ومش عارف السبب إيه ياريت حد يعرفني إيه السبب

وجزاكم الله مرة تانية على الرد والمرور الكريم

:( وانا آسف إذا كان الشرح بدائي بس أنا طبيعتي إن احب الأمور تكون بسيطة وسهلة قدر المستطاع

تم تعديل هذه المشاركة بواسطة rafik_172006_r في 23 يناير 2008 في 12:21

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#10
اقتباس
ولكن للأسف فيه مشكلة ظهرت وهي إن إذا فتحت نفس الشاشتين في نفس الوقت يقف البرنامج ومش عارف السبب إيه ياريت حد يعرفني إيه السبب

ممكن بسبب قفل التسجيلات .

انصحك بفتح موضوع جديد في القسم المناسب للغة البرمجة مع وضع الكود المستخدم

#11

أنا بصراحة مجربتش

SQL server 2000

في الحكاية دي

لكن على قول الاخ

TareqVB

ان مفيش فرق فا هوه ادرى مني

و الطريقة الي قلتلك عليها لان في أدمن نتروك عندنا فا دخلني على السيرفر و حملت السيكوال سيرفير 2005 و بدأت أدي البرمشن لكل واحد

اما بالنسبة لحكاية ملف الداتا يبقى معموله شير فا دي أنا مبرشحهاش (من وجهة نظري) لان ممكن عن طريق الخأ اي حد يقدر يوصلها و يمسحها

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

IT'S EASY, IF YOU TRY

#12
BOGY كتب:

أنا بصراحة مجربتش

SQL server 2000

في الحكاية دي

لكن على قول الاخ

TareqVB

ان مفيش فرق فا هوه ادرى مني

و الطريقة الي قلتلك عليها لان في أدمن نتروك عندنا فا دخلني على السيرفر و حملت السيكوال سيرفير 2005 و بدأت أدي البرمشن لكل واحد

اما بالنسبة لحكاية ملف الداتا يبقى معموله شير فا دي أنا مبرشحهاش (من وجهة نظري) لان ممكن عن طريق الخأ اي حد يقدر يوصلها و يمسحها

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

مشكور BOGY لكن احب اوضح إن الداتا بيز عندي موجودة على السيرفر الأساسي windows server 2003 ومعمول لها إرفاق داخل SQL server 2000 ولا حظت حتى لو جيت اعمل ليها حذف من داخل المجلد الموجود على السيرفر وانا موجود عليه مش بيتنفذ الأمر إلا لو لغيت الإرفاق وكمان جربت إني اشغل البرنامج منفصل من جهاز المستخدم وحصل نفس المشكلة على العموم أنا شاكر جدا الاهتمام وإن شاء الله نوصل لحل

TareqVB كتب:
ممكن بسبب قفل التسجيلات .

انصحك بفتح موضوع جديد في القسم المناسب للغة البرمجة مع وضع الكود المستخدم

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

هي الدنيا تقول بملئ فيها ***** حذار حذار من بطشي وفتكي

فلا يغرنكم مني ابتســــام ***** فقولي مضحك والفعـل مبكي

#13

اخ BOGY

ليس من الضروري عمل مشاركة لقاعدة البيانات وانما هي تكون موجودة على اي مكان داخل السيرفر ويتم الاتصال بها من خلال SQL server service وليس مثل الاكسس ولا حتى مثل SQL 2005 express ان كنت تقصد ذلك .

والاخ rafik_172006_r عندما تفتح سجل من جدول ويقوم شخص اخر بفتح نفس السجل في نفس الوقت هناك عدة اجراءات تتم يتحكم بها المبرمج حيث يمكن منع المستخدمين الآخرين من فتح نفس السجل او نفس الجدول او تمكينهم من فتحه للقراءة فقط وغيرها , فهذا يعتمد على لغة البرمجة التي تتعامل معها

#14

السلام عليكم ..

لقد جربت ADO Connection على جهاز السيرفر وقد نجح ..

لكن كيف أعمل ODBC لـSQL Server Express 2005 فهنالك عددة خيارات

..

moslimbag8.gif

------

saaid.jpg

#15

ولماذ يأاخ أحمد تستخدم ال ODBC بل يجب عليك استخدام الاتصال المباشر كما فعل الاخ رفيق في اول مشاركة ووضع اسم السيرفر .

بالنسبة لل ODBC انظر هذه المشاركة لتعريفها

#16

السلام عليكم أخوي

..

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

moslimbag8.gif

------

saaid.jpg

#17
rafik_172006_r كتب:
ولكن للأسف فيه مشكلة ظهرت وهي إن إذا فتحت نفس الشاشتين في نفس الوقت يقف البرنامج ومش عارف السبب إيه ياريت حد يعرفني إيه السبب

غالبا تحدث مشكلة Concurrency عند عملية القراءة من قاعدة البيانات لنفس الجدول من أكثر من Instance من الفورم التي تقرأ الجدول, ابحث عن مشاكل الـ Concurrency وحلوله بجوجل وهناك موضوع مثبت عنه ولكن في منتدي ADO.NET يمكن يفيدك ,,,

هذا الموضوع مغلق.

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