تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] حل: كيف يمكن نسخ جدول من قاعدة بيانات إلى اخرى
#1
السلام عليكم
رمضان كريم، وتقبل الله منا ومنكم الصيام
أنا اعما على مشروع وصادفتني المشكلة التالية:
أتعامل مع مجموعة من قواد البيانات أكسس، لها نفس المحتوى، فقد تختلف من حيث الاسم.
أقوم بفتح قاعدة البيانات التي أريد العمل عليها دون أي مشكل، لكني لم أعرف كيف أنسخ الجدول Table1 من قاعدة البيانات التي فتحتها إلى قاعدة بيانات أخرى اسمها db_work.

تلخيصا لما سبق، أن المشكلة تكمن أني في كل مرة أتعامل مع قاعدة بيانات جديدة

المشروع مرفق، ومن لديه المعرفة فليفرج عنا هذه المعضلة وجزاكم الله كل خير.


الملفات المرفقة
.rar   copy table.rar (الحجم : 105.78 ك ب / التحميلات : 80)
الرد }}
تم الشكر بواسطة:
#2
الامور تترتب على ان المسميات الداخلية ثابتة او متغيرة
اذا كانت متغيرة ستحتاج لعمل كود لجلب جميع مسميات الجداول بداخل قاعدة البيانات
واذا كان ثابت والاسماء موحدة فى الجميع

يمكنك تنفيذ تلك الكود لاتمام انشاء الجدول
كود :
Create table Table1([N°] AUTOINCREMENT  PRIMARY KEY, [nom] TEXT(255), [prenom] TEXT(255))

واذاكنت بحاجة بنقل المحتوى بداخل الجدول الى الجديد

سيتم عمل كود لمعرفة اجمالى عدد محتوى الجدول
من ثم جود استعلام لجلب جميع محتوى الجدول
من ثم عمل For لاتمام عمل تكرار الكود الادخال INSERT 
ويتم اعطاء الداتا من الاستعلام الى كود الاضافة

وبكده تتم عملية النسخ

يارب تكون الفكرة مبسطة في الشرح

تحياتى لك
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

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


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}
تم الشكر بواسطة:
#3
هذا الاستعلام يقوم بنقل بيانات الجدول الى جدول جديد فى قاعدة البيانات المحددة 

كود :
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
الرد }}
تم الشكر بواسطة: elgokr , sendbad100 , اسامه الهرماوي
#4
جزاكم الله خيرا على الرد والمساعدة
لقد استخدمت الكود وهو يعمل بشكل جيد
مشككككككورين
الرد }}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم