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

كيفيه عمل برنامج على clientوربطه بقاعده بيانات على سيرفر2003

بدأه mohamednada في 7 فبراير 2012 · 17 رد · 2,719 مشاهدة · في برمجة الشبكات والتطبيقات الموزعة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اعضاء المنتدى الكرام

اريد مساعدتكم

انا عايز اعمل برنامج يكون على اجهزه كمبيوتر كتير واربط البرنامج دا بقاعده بيانات من نوع اكسيس او sql server 2000

قاعده البيانات موجودوه على سيرفر 2003

ازاى اربط وما هو كود الربط

باستخدام لغه برمجه vb6

او vb.net

او باستخدام c++

ايهما اصلح لاداؤ هذه المهمه

وشكرا

#2

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

إذا كان لديك الخيار بين أكسس و سيكوال سيرفر و تريد تطبيق يعمل على الشبكة فأنا أفضل استخدام سيكوال سيرفر ( طبعاً الأفضل أحدث نسخة و ليس 2000 )

اختيار لغة البرمجة يعتمد على نوع التطبيق, و لكن بشكل عام للتطبيقات العادية VB.Net تكون أسهل و أسلس في التعامل.

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

#3

لقد بحثت كثيرا وجربت اكواد عديده ولكن لم تفلح اى منها دائما ما يكون هناك اخطاء

#4

طيب أخي انت حدد البيئة التي تريد العمل عليها و سأزودك بالكود المناسب في هذه الحالة.

#5

اريد العمل باستخدام لغه vb6

او لغه vb.net

وياريت حضرتك تقولى الكود لو هربط بقاعده بيانات اكسيس او sql server

#7

عندما اقوم بالربط بين البرنامج وقاعده البيانات على السيرفر بيظهر لى هذا الخطأ

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll

Additional information: The Microsoft Jet database engine cannot open the file '\\10.0.0.10\c:\documents and settings\administrator\desktop\new folder\resala.mdb'. It is already opened exclusively by another user, or you need permission to view its data.

#8

يبدو أن الملف مفتوح مسبقاً من برنامجك و لم يتم إغلاق الاتصال.

#9

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

ما حل هذه المشكله ؟

#10

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll Additional information: Cannot connect to server.

هذا الخطأ هو الى بيظهرلى الان عند اجراء اى عمليه حفظ او استدعاء من قاعده البيانات

الكود الى بستخدمه

Module Module1

Public cn As New OleDbConnection

Public cmd As New OleDbCommand

Public dr As OleDbDataReader

Public h As Integer

Public s As String

cn.ConnectionString = "Provider=MS Remote;Remote Server=//10.0.0.10;Remote Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\documents and settings\administrator\desktop\new folder\resala.mdb

cn.Open()

cmd.Connection = cn

cmd.CommandType = CommandType.Text

#11

جرب استبدال سطر ال ConnectionString بالتالي:

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\documents and settings\administrator\desktop\new folder\resala.mdb"
#12

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

لكن فى حالتى قاعده البيانات على جهاز اخر ؟؟؟

#13

أخي: فقط استبدل :

c:\documents and settings\administrator\desktop\new folder\resala.mdb

بالمسار على الشبكة, مثلاً:

\\ServerName\Databases\resala.mdb
#14

c:\documents and settings\administrator\desktop\new folder\resala.mdb

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

وانا فى بدايه الكود كتبت الاى بى الخاص بالخادم ؟؟

#15

نعم و لكنك استخدمت ال Provider المسمى : MS Remote و الذي لا يصلح لحالتك.

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

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\ServerName\Databases\resala.mdb"

لاحظ أن ال Provider هو: Microsoft.Jet.OLEDB.4.0

#16

مشكور اخى الكريم هذا الكود عمل بشكل جيد على الشبكه المحليه

ولكن عندما نريد الاتصال فى شبكات اخرى اى عن طريق الانترنت

لان فى الواقع قاعده البيانات لن تكون على نفس الشبكه

ايه يكون الحل فى هذه الحاله

ولو نوع قاعده البيانات تغير على الخادم الى sql server

ما التغيرات التى سوف تتم على الكود

#17

إذا كان الاتصال عن طريق الانترنيت فيجب استخدام VPN Virtual Private Network ( يمكنك البحث عنها في المنتدى فهناك مواضيع كثيرة تتحدث عنه )

بالنسبة ل SQL Server سطر الاتصال يكون كالتالي:

cn.ConnectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;"
#18

انصح باستخدام asp.net and sql server اسهل واسرع في العمل

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

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

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

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

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