اذهب الي المحتوي
أوفيسنا

كيف فتح قاعدة بيانات عن طريق قاعدة بيانات اخرى


SALEM_1212

الردود الموصى بها

اذا كانت لدينا قاعدة بيانات A ( بها فورم لنسمة Form_ِِA)

وقاعدة بيانات B (بها فورم Form_B)

اذا كانت قاعدة البيانات B مقفلة (بكلمة مرور -مثل -(123)

اريد مثلا عندما انا في فورم Form_A في قاعدة البيانات A ان ادخل الى فورم Form_B في قاعدة البيانات B , اي اتجاوز كلمة المرور 123

وشكرا ارجو ان يكون السوال واضح............

تم تعديل بواسطه محمد طاهر
  • Thanks 1
رابط هذا التعليق
شارك

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

Function OpenPasswordProtectedDB()

Dim strAccessExe As String, strDB As String

   'Define as Static so the instance of Access 

   'doesn't close when the procedure ends. 

   Static acc As Access.Application

   Dim db As DAO.Database

   Dim strDbName As String

'The path and filename of the DB to open. 

   strDbName = GetDBDir & "OtherDatabase.mdb"

   Set acc = New Access.Application

   acc.Visible = True

   Set db = acc.DBEngine.OpenDatabase(strDbName, False, False, ";PWD=pswrd")

   acc.OpenCurrentDatabase strDbName

   acc.RunCommand acCmdAppMaximize

   db.Close

   Set db = Nothing

End Function

رابط هذا التعليق
شارك

هذا الكود للأخ أبو هاجر :

   Dim wrkJet As Workspace

      Dim AbA As Database


Set wrkJet = DBEngine.Workspaces(0)

      Set AbA = wrkJet.OpenDatabase("databasename.mdb", _

          False, False, _

          ";PWD=123")

          

  
مع وضع المسار الكامل مع اسم قاعدة البيانات التي تريد الاتباط بها بدلاً من "databasename.mdb" و بذلك تكون حققت الاتصال مع القاعدة المحمية بكلمة سر 123 و تنفذ بعد ذلك ما تريد من أكواد و من المهم كما ذكر أخونا أبو هاجر ألا تنسى إغلاق قاعدة البيانات بعد الارتباط بالجداول المطلوبة حتى لا تكون عرضة للتلف بعد انتهاء ما تريد من أكواد نفذ الأمر التالي AbA.Close Set wrkJet = Nothing Set AbA = Nothing ========== و بالمناسبة الكود كاملا كان لعمل ربط للجداول فى قاعدة محمية بكلمة سر و كان كالتالي :
 Dim wrkJet As Workspace

      Dim AbA As Database


Set wrkJet = DBEngine.Workspaces(0)

      Set AbA = wrkJet.OpenDatabase("databasename.mdb", _

          False, False, _

          ";PWD=123")

          DoCmd.TransferDatabase acLink, "Microsoft Access", "databasename.mdb", acTable, "table1","table2"

مع وضع المسار الكامل مع اسم قاعدة البيانات التي تريد الاتباط بها بدلاً من "databasename.mdb"

ووضع اسم الجدول الموجود الذي تريد الارتباط به مكان "table1"

والاسم الذي تريد تسمية الجدول به بعد الارتباط مكان "table2"

من المهم ألا تنسى إغلاق قاعدة البيانات بعد الارتباط بالجداول المطلوبة حتى لا تكون عرضة للتلف

بعد الارتباط نفذ الأمر التالي

AbA.Close

Set wrkJet = Nothing

Set AbA = Nothing

رابط هذا التعليق
شارك

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

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

salem_1212

رابط هذا التعليق
شارك

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

Function OpenPasswordProtectedDB()

Dim strAccessExe As String, strDB As String

  'Define as Static so the instance of Access 

  'doesn't close when the procedure ends. 

  Static acc As Access.Application

  Dim db As DAO.Database

  Dim strDbName As String

'The path and filename of the DB to open. 

  strDbName = GetDBDir & "OtherDatabase.mdb"

  Set acc = New Access.Application

  acc.Visible = True

  Set db = acc.DBEngine.OpenDatabase(strDbName, False, False, ";PWD=pswrd")

  acc.OpenCurrentDatabase strDbName

  acc.RunCommand acCmdAppMaximize

  db.Close

  Set db = Nothing

End Function

حيث اننى لم انتبة الى PWD=pswrd هذة الكلمة فقط ضع 123 بدل (pswrd)

اخى محمد طاهر

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

اما اول كود لم يعمل معى عند ما تكون القاعدة محمية بكلمة مرور لا اعرف ما السبب

رابط هذا التعليق
شارك

الجزء الاول كان لعمل الوصلة فقط و لا ينتج عنه شيء و تحتاج الي اكمال الاكواد بحسب الحاجة

و بما أن الوصلة نجحت لعملية الربط ، فهذا يعني أن الجزء الاول ناجح ( و هو يمثل فقط فتح الاتصال مع القاعدة )

مع تحياتي

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information