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

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

بدأه امانى عثمان في 1 مارس 2008 · 2 رد · 1,146 مشاهدة · في قسم قواعد البيانات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

باستخدام الادوا

وشكراا

#2

كود SQL لأكسيس :

INSERT INTO Employee IN 'C:\Documents and Settings\MMA\Desktop\Project\DB2.mdb'
SELECT Emp_ID AS Emp_ID, Emp_Code AS Emp_Code, Emp_Name AS Emp_Name
FROM Emp;

كود ADO من داخل الفيجوال :

1- فتح 2 كائن إتصال Cn1,Cn2 بحيث أن يتصل الأول Cn1 مع قاعدة البيانات الأولي ، والثاني Cn2 مع قاعدة البيانات الثانية .

2- قم بإدراج جدول جديد بقاعدة البيانات الثانية بحيث أن يطابق مواصفات الجدول الموجود بقاعدة البيانات الأولي ، مثال :

نفرض أن لدينا جدول الموظف Employee ، هذا الجدول يحتوي علي ثلاثة حقول كما يلي :

Employee_ID --> ترقيم تلقائي ، PK

Employee_Code --> نص(20) ، Unique

Employee_Name --> نص(50) ، Unique

ويحتوي علي مجموعة من الحقول ، المفروض أننا ننشأ جدول بقاعدة البيانات الثانية كما يلي :

Dim SQL As String

SQL = "Create Table Employee("
SQL = SQL & "Emp_ID  Country,"
SQL = SQL & "Emp_Code VarChar(20),"
SQL = SQL & "Emp_Name VarChar(50),"
SQL = SQL & "Constraint PK_Employee Primary Key(Emp_ID),"
SQL = SQL & "Constraint UQ_Employee_Code Unique(Employee_Code),"
SQL = SQL & "Constraint UQ_Employee_Name Unique(Employee_Name)"
SQL = SQL & ")"

Cn2.Execute SQL

ولكن يجب أولاً التأكد من أن الجدول موجود أم لا ، ففي حالة وجودة يجب حذفة كما يلي :

SQL = "Drop Table Employee"
Cn2.Execute SQL

أو يمكنك إجراء حذف للبيانات فقط كما يلي :

Cn2.Execute "Delete From Employee"

ومن ثم إجراء تعديل علي حقل Employee_ID بحيث أن يبدأ عملية الترقيم التلقائي من جديد كما يلي :

Alter Table Employee Alter Column Employee_ID   Counter;

بعد ذلك يتم جلب كافة السجلات الموجودة في جدول Employee بقاعدة البيانات الأولي ونسخها بقاعدة البيانات الثانية كما يلي :

Dim Rs As New ADODB.Recordset
Rs.CursorLocation = 3
Rs.Open "Select Employee_Code,Employee_Name From Employee",Cn1
Do While Not Rs.EOF
	SQL = ""Insert Into Employee(Employee_Code,Employee_Name) Values("
	SQL = SQL & "'" & Rs!Employee_Code & "',"
	SQL = SQL & "'" & Rs!Employee_Name & "')"
	Cn2.Execute SQL
Loop

بالتوفيق إن شاء الله ،

شكراً

تم تعديل هذه المشاركة بواسطة MMA_EG_Cairo في 1 مارس 2008 في 23:37

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#3

شكرا اخى فعلا تم عمل الازم

من هذا الشرح القيم

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