• 0
mzmzwn

مساعدة بسيطة في مثال لقاعدة بيانات بسيطة

سؤال

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

 

كيفكم اخوتي؟ عساكم بخير إن شاء الله

 

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

 

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

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

 

حصلت على هذا المثال وهو قريب جدا مما اريده
http://www.planet-source-code.com/upload_PSC/ftp/ADOX_tutor1577234212003.zip

 

وهو يقوم بعرض كل الـ Tables في List1

ويقوم بعرض كل الـ Fields لكل Table في List2

واريد إضافة List3 لعرض كل البيانات الموجودة داخل كل Field من الـ Fields الموجودة في List2

 

اتمنى انني اوصلت الفكرة ^^"

 

بإنتظاركم ...

 

 

مع جزيل الشكر مقدما لمساعدتكم :)

 

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

14 إجابة على هذا السؤال .

  • 0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

فقط طلب أخير وسأكون ممتناً جداً وسأكون قادر على إكمال مشروعي إن شاء الله ثم بفضل مساعدتك

أحتاج إلى تعديل البرنامج تعديل أخير حتى يمكنني :
1)إضافة جدول جديد Table للقائمة أو حذف جدول من الموجود في القائمة  List1
2)إضافة حقل جديد Field أو حذف حقل موجود من الجداول في القائمة List2

3)إضافة سجل جديد Record أو تحديث سجل موجود موجود أو حذف سجل في قائمة List3

 

اعرف اني اثقلت عليك بالطلبات الجديدة وأتمنى ان تساعدني إذا كان بإمكانك ذلك طبعا  :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

ADOX tutorial 1.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله خير يابطل ماقصرت <3

 

فيه خطأ يظهر مع بعض الحقول بأسماء معينة ومنها كلمة Names وكلمة Password ولا ادري إن كان هناك كلمات أخرى

 

إذا يوجد حقل في قاعدة البيانات بهذه الاسماء في list2 عند الضغط عليها يظهر خطأ أو إذا حاولت إضافة حقل جديد بهذه الاسماء يعطيني رفض ^^"

 

شوف الصورة في المرفقات

 

وايضا اعتقد انك نسيت تسوي خيار Update للـRecords عشان اقدر اغير على البيانات ^^"

 

أشكرك مرة أخرى والله يعطيك العافية يارب

post-275943-0-79153100-1373168447_thumb.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

هناك كلمات تدخل في مفردات اللغه نفسها ولذلك لا يمكن استخدامها . مثلا لا تستطيع ان تنشيء جدول اسمه create لان الكلمه تعتبر من مفردات اللغة وهو امر لانشاء الجداول . وقس على ذلك .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اوكي بشوف الاسماء التي يرفضها وبغيرها إن شاء الله وجزاك الله كل خير :)

 

طيب ممكن تعطيني أمر تحديث بيانات سجل Record موجود ?

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله خير ماقصرت أخي العقدة

 

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

 

Private Sub addtoDB(Tbl As String, Fld As String, Rcd As String)
If cn.State <> 1 Then
   MsgBox "No connection to the database."
Exit Sub
End If

If Trim(Rcd) <> "" Then
On Error GoTo myerr
cn.Execute "insert into " & Trim(Tbl) & " (" & Trim(Fld) & ") Values('" & Trim(Rcd) & "')"
End If
Exit Sub

myerr:
  MsgBox Err.Description, 48, Err.Number

End Sub

 

وعند الاستدعاء استخدمت هذه الأوامر

 

Call addtoDB("PCS", "PC", lstName.List(i))
Call addtoDB("PCS", "Cost", lstCost.List(i))
Call addtoDB("PCS", "Outt", lstOut.List(i))
Call addtoDB("PCS", "Entert", lstEnter.List(i))

 

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

post-275943-0-30279700-1373236086_thumb.

 

ومثل ماتلاحظ كل record يتم تسجيله في سطر لحاله ويترك بقية الـ Field المجاورة فارغة

 

ماكنت أتوقعه وأريده ان يتم تعبئة كل الحقول بالترتيب وليس كل سجل يأخذ حقل واحد ويترك بقية الحقول فارغة في نفس السطر ^^"

 

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

 

إضافة سجل جديد Record أو تحديث سجل موجود موجود أو حذف سجل في قائمة List3

 

القائمة List3 تحمل بيانات الحقل الموجود في List2 .

 

لذلك تعاملك أصبح مع الحقل الموجود بالــ List2 بما يحمله من بيانات في الــ List3 فقط وليس على مستوى السجل الذي هو يعتبر مجموع الحقول الموجوده بالــ List2 التابع للجدول الموجود بالــ List1

 

انا لا اعلم مالغرض من مرادك لذلك قدمت لك المطلوب حسب ما سبق ذكره .

 

لكن الامر بسيط ان شاء الله تعالى عند اضافة بيانات لحقل من الــ List2 يجب ادخال جميع القيم التابعة للحقول الموجوده بالــ List2 في امر واحد . لتكتمل بيانات السجل .. السجل هو مجموع الحقول التابع للجدول .

 

 

ضع هذا في الــ  Command6

Dim sql As String, sql_val As String, msg As String, i As Integersql = ""sql_val = " Values('"If cn.State <> 1 Then   MsgBox "No connection to the database."Exit SubEnd IfIf List2.ListIndex < 0 Then   MsgBox "Select Field Name.", 48, "!"   Exit SubEnd IfOn Error GoTo myerrsql = "insert into " & Trim(List1.Text) & " ("For i = 0 To List2.ListCount - 1msg = InputBox("Enter Record Data : " & List2.List(i), Command6.Caption)sql = sql & Trim(List2.List(i))sql_val = sql_val & Trim(msg)If i < List2.ListCount - 1 Then    sql = sql & ","    sql_val = sql_val & "','"End IfNext isql = sql & ")"sql_val = sql_val & "')"cn.Execute sql & sql_valList3.AddItem Trim(msg)Exit Submyerr:  MsgBox Err.Description, 48, Err.Number
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

على فكره يجب معالجة موضوع نوعية بيانات الحقول هذا المثال يتعامل مع حقول نصيه فقط . للاحاطه .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله خير أخي العقدة

انا تقريبا الآن اعمل بدون مشاكل وانجزت الكثير من الأمور بفضل الله ثم مساعدتك لاحرمت الأجر

 

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

 

أشكرك جزيل الشكر :)

وشهر مبارك علينا وعليك وعلى الأمة الإسلامية وكل عام وانت بخير وسلامة

 

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

 

إستفسار سريع ^^"

أحاول عمل DataReport لقاعدة البيانات التي استخدمها

 

بحثت عن الطريقة والأوامر ووجدت الأمر التالي
 

 

    Set DataReport1.DataSource = Adodc1
    DataReport1.Sections("Section1").Controls("text1").DataField = "id"
    DataReport1.Sections("Section1").Controls("text2").DataField = "name"
    DataReport1.Sections("Section1").Controls("text3").DataField = "class"
    DataReport1.Sections("Section1").Controls("Text4").DataField = "Dob"
    DataReport1.Sections("Section1").Controls("Text5").DataField = "Contact"
    DataReport1.Show

 

المشكلة انني لم استخدم اداة Adodc في قاعدة البيانات خاصتي حسب المثال التي ادرجته لك وعملنا عليه في هذا الموضوع

 

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

 

cn.Provider = "microsoft.jet.oledb.4.0;jet oledb:database [email protected]"

cn.Open App.Path & "\mwn.mdb"

 

 

والحقول التي اريد عرضها في DataReport موجودة في جدول بإسم PCS داخل قاعدة البيانات mwn.mdb

------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

سؤالي باختصار شديد

ماذا اغير في هذا الامر (Set DataReport1.DataSource = Adodc1) حتى يمكنني عرض البيانات من جدول باسم PCS بدل عرض البيانات من اداة Adodc

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

فيه احد عنده حل لهذه المشكلة؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

معقول محد يعرف والله فكرتها شغلة بسيطة !!

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .