منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : ارجوا المساعدة فى نقل البيانات من جدول الى جدول فى قاعدة بيانات اخري
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
اريد نقل البيانات من جدول داخل قاعدة بيانات الى جدول اخر فى قاعدة بيانات اخري .
مع العلم قاعدة البيانات والجدول ... هو بنفس اسم الجدول ونفس اسم قاعدة البيانات .
وشكرا
السلام عليكم و رحمة الله و بركاته
ينقل إلى القسم المناسب
بالنسبة لسؤالك ، تضع بيانات الجدول المراد نقله في DataTable ثم بواسطة حلقة for each ....... next تنقل الصفوف إلى الجدول الموجود في قاعدة البيانات الثانية بواسطة insert into ...........
السلام عليكم و رحمة الله و بركاته
السلام عليكم
شكرا اخي وبارك الله فيك .
هذا هو كودي ولاكنه يقوم بنقل السجل الاول فقط اكثر من مره .
حيث ان con هى القاعدة الاولة والجدول اسمه tabel2 .
وان conn هى القاعدة الثانية والجول اسمه tabel2

Dim s As String = "select * from tabel2"
Dim ad1 As New OleDbDataAdapter(s, Con)

Dim ds1 As New DataSet()
ds1.Clear()
ad1.Fill(ds1, "tabel2")
Dim ta1 As DataTable
Dim rs1 As DataRow
Dim i As Integer

ta1 = ds1.Tables("tabel2")


Dim add As String = "insert into tabel2 (auno,no1,no2,na1,no_s,dat1,con1,val_s,val1,mem1) values (@p,@p1,@p2,@p3,@p4,@p5,@p6,@p7,@p8,@p9) "

Dim p As New OleDbCommand(add, Conn)

For each i = 0 To ta1.Rows.Count - 1

Update()

rs1 = ta1.Rows(i)

p.Parameters.AddWithValue("@p", rs1("auno"))
' et.Parameters.Add("@e", rs1("item_no"))
p.Parameters.AddWithValue("@p1", rs1("no1"))
p.Parameters.AddWithValue("@p2", rs1("no2"))
p.Parameters.AddWithValue("@p3", rs1("na1"))
p.Parameters.AddWithValue("@p4", rs1("no_s"))
p.Parameters.AddWithValue("@p5", rs1("dat1"))
p.Parameters.AddWithValue("@p6", rs1("con1"))
p.Parameters.AddWithValue("@p7", rs1("val_s"))
p.Parameters.AddWithValue("@p8", rs1("val1"))
p.Parameters.AddWithValue("@p9", rs1.Table.Rows(i)("mem1"))

p.ExecuteNonQuery()

Update()

Next

Update()
p.Dispose()
ds1.Dispose()



MsgBox("End Move Database")
.
منقول

دالة 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
السلام عليكم ..
بارك الله فيكم جميعاً ماقصرتوا والله .. جزاكم الله خير .
مع اني استخدمت كود اخر باستخدام داتا جريد ثم عمل حلقة ونقل كل صف الى متغير ومن ثم اضافته .
للعلم : ربي يحفظكم والله انكم محترفين ،، وانا شخصياً استفدة جداً من طريقتكم واسلوبكم فى البرمجة .
شكرا لكم .