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

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

مغلقمُجاب
بدأه dbahl في 27 فبراير 2014 · 14 رد · 4,079 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم 

اريد نقل البيانات من جدول داخل قاعدة بيانات الى جدول اخر فى قاعدة بيانات اخري .

مع العلم قاعدة البيانات والجدول ... هو بنفس اسم الجدول ونفس اسم قاعدة البيانات .

وشكرا

#3

شكرا وبارك الله فيك .

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

وهذا هو الكود

تاريخ المشاركة 2012-04-30 - 10:39 AM

اخوانى الكرام 
ممكن توضيح اكثر على هذا الكود
Try
ds.Clear()
Dim cmd As New OleDbCommand("INSERT INTo copytable1(Id,Name,Phone_Number,EE,mon_name,kind,s peed,m,mm)select * FROM table1", conn)
conn.Open()

cmd.ExecuteNonQuery()
conn.Close()
MsgBox("تمت عملية الترحيل")
Catch ex As Exception
MsgBox(ex.Message)
End Try
هذا الكود خاص بنسخ البيانات ممكن تعديله حسب رؤيتكم لينقل البيانات بدلا من نسخها 
فارجو الرد لانى تعبت جدا من هذا ولم يستطع احد مساعدتى 
  • 0
  •  
  •  
#4

أخي الفاضل

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

صممت لك مثال سريعا يقوم بنقل البيانات من جدول العملاء واسمة Tbl_Customers الي جدول Tbl_Customer_MovedData

ويقوم المثال بنقل البيانات من الجدول الاول الي الجدول الثاني مباشرة

اتمني ان يفيدك المثال

MoveDataFrom_TO.rar

2 −1

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#5

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

وبارك الله فيك واعذرني على تعبك .

#6

تم عمل التعديل المطلوب

يوجد بالمثال قاعدتين

القاعده الاولي اسمها DB

القاعده الثانية اسمها DB2

ويتم نقل البيانات من الجدول الاول في القاعده الاولي الي ---- > الجدول  الموجود في القاعده الثانية

بالتوفيق

MoveDataFrom_TO.rar

2

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#7
.

 منقول 

 

دالة CopyTableToDatabase لنسخ بيانات جدول من قاعدة بيانات إلى أخرى بشرط وجود نفس الجدول والحقول بقاعدة البيانات الثانية


Private Function CopyTableToDatabase(ByVal tableName As String, ByVal fromDatabaseName As String, ByVal fromDatabasePassword As String, ByVal toDatabaseName As String, ByVal toDatabasePassword As String, Optional ByVal Access2007 As Boolean = False) As Boolean

    Try

        Dim provider As String = IIf(Access2007, "Microsoft.ACE.OLEDB.12.0", "Microsoft.Jet.OLEDB.4.0")

        Dim conFrom As New OleDb.OleDbConnection("Provider=" & provider & ";Data Source=" & fromDatabaseName & ";Jet OLEDB:Database Password=" & fromDatabasePassword & ";")

        Dim conTo As New OleDb.OleDbConnection("Provider=" & provider & ";Data Source=" & toDatabaseName & ";Jet OLEDB:Database Password=" & toDatabasePassword & ";")


        conTo.Open()

        Dim comTo As New OleDb.OleDbCommand("Delete from " & tableName, conTo)

        comTo.ExecuteNonQuery()

        conTo.Close()


        conFrom.Open()

        Dim comFrom As New OleDb.OleDbCommand("Insert into [" & toDatabaseName & ";PWD=" & IIf(toDatabasePassword = "", " ", toDatabasePassword) & "]." & tableName & " SELECT * From " & tableName, conFrom)

        comFrom.ExecuteNonQuery()

        conFrom.Close()


        Return True


    Catch ex As Exception

        MsgBox(ex.Message)

        Return False

    End Try

End Function


 

طريقة استخدامها


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    'If CopyTableToDatabase("Table1", Application.StartupPath & "\db1.mdb", "", Application.StartupPath & "\db2.mdb", "", False) Then

    If CopyTableToDatabase("Table1", Application.StartupPath & "\Database1.accdb", "", Application.StartupPath & "\Database1.accdb", "", True) Then

        MsgBox("تم النسخ بنجاح")

    Else

        MsgBox("فشلت عملية النسخ")

    End If


End Sub

تم تعديل هذه المشاركة بواسطة vbnetvbnet في 28 فبراير 2014 في 10:59

.

أقوال مميزة من منتدى الفريق العربي للبرمجة (قيد التحديث)

 

الأستاذ: محمد طلال بدوي كتب:

إن صحبة الناجحين تصيب بعدوى النجاح، ويا لها من عدوى جميلة، تشعرك بجو من الحماسة والمنافسة، وتبقيك مشتعلا في بحث مستمر عن المراكز الأولى.

الدكتورة: زهرة (أم عهود) كتب:

والله لا نريد من هذه الدنيا شيء إلا ان نكون اخوة متحابين في الله يجمعنا طلب العلم ومساعدة الآخرين لوجه الله تعالى.

.
#8
محمد فؤاد تركي كتب:

أخي الفاضل

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

صممت لك مثال سريعا يقوم بنقل البيانات من جدول العملاء واسمة Tbl_Customers الي جدول Tbl_Customer_MovedData

ويقوم المثال بنقل البيانات من الجدول الاول الي الجدول الثاني مباشرة

اتمني ان يفيدك المثال

السلام عليكم

هل من الممكن استخدام شريط التقدم  ProgressBar في المثال السابق MoveDataFrom_TO ليبين عملية النسخ  في حال كانت البيانات كبيرة الحجم ليتم معرفة تقدم عملية النسخ

مع الشكر

تم تعديل هذه المشاركة بواسطة عدنان الشمري في 1 أبريل 2014 في 07:38

#9

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

#10

كيف يتم النقل اذا كانت قاعدة البيانات SQLserver2008

#11

استخدم DTS

ابحث عنها في جوجل

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#12

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

#13

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

MoveDataFrom_TO.rar

1

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#14

اشكرك جزيلا و لكن انا قصدى ان الباسورد يكون فى الجزء ده من الكود
 

        cmd.CommandText = "INSERT INTO Tbl_Customers_MovedData IN'" & Application.StartupPath & "\DB2.accdb' SELECT * FROM Tbl_Customers;"

 لان الداتا بيس الاخري ليست فى نفس مسار الداتا بيس الى هيتم النقل منها و عند تشغيل الكود بهذا الشكل يتعرف على قاعدة البيانات و لكن يقولى الباسورد غلط و لما اضيف الباسورد بيقولى مسار الداتا بيس غلط :/

#15 أفضل إجابة

في هذه الحالة سيتعين علينا اعاده صياغة الكود لكي يتلائم مع الطلب الجديد

الكود كامل وقاعدتي البيانات محميتين بكلمات مرور

 

Imports System.Data
Imports System.Data.OleDb
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click


        Using sourceConnection As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DB.accdb;Jet OLEDB:Database Password=123456;"),
      destinationConnection As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DB2.accdb;Jet OLEDB:Database Password=123456;"),
  adapter As New OleDbDataAdapter("SELECT * FROM Tbl_Customers", sourceConnection),
      insertCommand As New OleDbCommand("INSERT INTO Tbl_Customers_MovedData values (@CustID,@CustName,@JoiningDate)", destinationConnection),
      deleteCommand As New OleDbCommand("DELETE FROM Tbl_Customers", sourceConnection)


            insertCommand.Parameters.Add("@CustID", OleDbType.VarChar, 100, "CustID")
            insertCommand.Parameters.Add("@CustName", OleDbType.VarChar, 100, "CustName")
            insertCommand.Parameters.Add("@JoiningDate", OleDbType.VarChar, 100, "JoiningDate")


            adapter.InsertCommand = insertCommand
            adapter.DeleteCommand = deleteCommand
            adapter.AcceptChangesDuringFill = False


            Dim table As New DataTable


            adapter.Fill(table)
            adapter.Update(table)


            table.AcceptChanges()


            sourceConnection.Open()
            deleteCommand.ExecuteNonQuery()
            sourceConnection.Close()
        End Using




        MsgBox("Data Moved", MsgBoxStyle.Information, "Moved")
    End Sub
End Class
1

certifiedj.jpg

 

 

Image Hosted by ImageShack.us

هذا الموضوع مغلق.

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

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

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

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

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