السلام عليكم
رمضان كريم، وتقبل الله منا ومنكم الصيام
أنا اعما على مشروع وصادفتني المشكلة التالية:
أتعامل مع مجموعة من قواد البيانات أكسس، لها نفس المحتوى، فقد تختلف من حيث الاسم.
أقوم بفتح قاعدة البيانات التي أريد العمل عليها دون أي مشكل، لكني لم أعرف كيف أنسخ الجدول Table1 من قاعدة البيانات التي فتحتها إلى قاعدة بيانات أخرى اسمها db_work.
تلخيصا لما سبق، أن المشكلة تكمن أني في كل مرة أتعامل مع قاعدة بيانات جديدة
المشروع مرفق، ومن لديه المعرفة فليفرج عنا هذه المعضلة وجزاكم الله كل خير.
الامور تترتب على ان المسميات الداخلية ثابتة او متغيرة
اذا كانت متغيرة ستحتاج لعمل كود لجلب جميع مسميات الجداول بداخل قاعدة البيانات
واذا كان ثابت والاسماء موحدة فى الجميع
يمكنك تنفيذ تلك الكود لاتمام انشاء الجدول
كود :
Create table Table1([N°] AUTOINCREMENT PRIMARY KEY, [nom] TEXT(255), [prenom] TEXT(255))
واذاكنت بحاجة بنقل المحتوى بداخل الجدول الى الجديد
سيتم عمل كود لمعرفة اجمالى عدد محتوى الجدول
من ثم جود استعلام لجلب جميع محتوى الجدول
من ثم عمل For لاتمام عمل تكرار الكود الادخال INSERT
ويتم اعطاء الداتا من الاستعلام الى كود الاضافة
وبكده تتم عملية النسخ
يارب تكون الفكرة مبسطة في الشرح
تحياتى لك
هذا الاستعلام يقوم بنقل بيانات الجدول الى جدول جديد فى قاعدة البيانات المحددة
كود :
SELECT Table1.N°, Table1.nom, Table1.prenom INTO Table1 IN 'C:\Users\Yossof\Desktop\copy table\copy table\copy table\bin\Debug\DataBases\db_work.mdb'
FROM Table1;
و هذا كود الزر لنقل الجدول
كود :
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Try
Using con As New OleDb.OleDbConnection("Provider=Microsoft.jet.oledb.4.0;Jet OLEDB:Database Password=123;Data Source=DataBases\db1.mdb")
Using cmd As New OleDb.OleDbCommand("SELECT Table1.N°, Table1.nom, Table1.prenom INTO Table1 IN '" & Application.StartupPath & "\DataBases\db_work.mdb' FROM Table1;", con)
con.Open()
cmd.ExecuteNonQuery()
con.Close()
End Using
End Using
MsgBox("table copied")
Catch ex As Exception
MsgBox("table already exists")
End Try
End Sub
جزاكم الله خيرا على الرد والمساعدة
لقد استخدمت الكود وهو يعمل بشكل جيد
مشككككككورين