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

Export & Import

مغلق
بدأه ابو عمر عبدالله في 30 أبريل 2001 · 23 رد · 4,466 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أريد أن اعمل form فقط لعملية النسخ الاحتياطي بحيث يحتوي على 2 Buttons

بحيث يكون الزر الأول لنسخ البيانات الى القرص المرن A

والضغط على الثاني يقوم باسترجاع البيانات من القرص المرن A الى القرص الصلب

اعمل على Personal Oracle 7.3 & Developer 6

فمن لديه الحل وله الشكر

#2

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

نص الرسالة

ويمكنك يا اخي عمل ملف دفعي (Bat) عن طريق فتح ملف من داخل الديفلوبر ويكون الملف نصي وتقوم بتحديد ملف دخل ومن ثم تقوم بتشغيل هذا الملف الدفعي كما لو انك تقوم بتشغيل ملف تنقفيذي وهذه الفكرة نفسها قمت بها في فيجوال بيسك ولكني لم اجربها في ديفلوبر ولكن الفكرة صحيحه ومعقوله جرب واخبرني

أخوك

محمد بدوي

#3

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

الاخ الفاضل أبو عمر عبدالله

الاخوه الافاضل

بخصوص عمل ال Form فانا لدي الطريقه

ولكن سوف ارسلها لكم بالكامل (مع ال form وال triggers الخاصه بال buttons )

ولكن ارجوا ان تخبرنى عن كيفيه ارسلها لكم اما

عن طريق الايميل مثلا الخاص بكم

او عن طريق ايميل خاص بالموقع

عملنا بأنى ارغب بإرسالها للجميع لكى تعم الفائده

جزاكم الله ووفقكم.

عمر باعقيل

المدينه المنوره

#4

الاخ الفاضل / عمر باعقيل

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

بالنسبة لارسال ال form اخي راجع بريدك.

وقد توافقني ان انشاء form ووضع ال buttons سهله الا اذا كان هناك triggers على مستوى ال form.

واقترح عليك وضع ال triggers الخاصة بالbuttons هنا ليطلع الاخوه على الكود وطريقة كتابتة للفائده ومن اراد الform يطلب.

واذا ممكن تعريفنا بالخيارات الموجوده في export & import .

اطال الله عمرك في طاعته

[عدلت بواسطة ابو عمر عبدالله ت:01-05-2001 س: 08:05 AM]

#5

فم اخي بارسال البرنامج والكود وسوف اقوم بوضعه في الموقع بقسم اوراكل بصيغة HTML وسوف امكن سحب المثال

ارسله على بريدي

Badwisoft@yahoo.com

وشكرا على هذه المبادرة

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#6

الأخوة الأعزاء القائيمين على هذا الموقع الرائع

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

بداية هذه هي أول مشاركة لي وأنتهز هذه الفرصة وأتقدم بخالص الشكر والتقدير كل العاملين على هذا الموقع الرائع فجزاكم الله خير الجزاء.

أود من سعادتكم أن ترسلو لي النوذج الخاص

بـ Export & Import لآنني في أمس الحاجة إليه وأرجو من سعادتكم إرسال كل ماهو مفيد ونافع بالنسبة للنماذج والتقارير على العنوان البريد الإلكتروني التالي moh789@hotmail.com

وجزاكم الله خيرا ونفع بكم الإسلام والمسلمين

أخوكم الجديد محمد المتولي

#7

الاخ الفاضل عمر باعقيل

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

ماوصلنا شي على البريد عسى المانع خير

الاخوه الافاضل

هناك فصل كامل عن الاستيراد والتصدير للوراكل 8i لا وبالعربي

في كتاب مترجم اسمه

اوراكل 8i دليل المتدئين (النسخة المعتده من مطابع اوراكل)

الترجمة العربية والنشر والتوزيع - مكتبة جرير -

#8

السلام عليكم

مسكنا طرف الخيط

انشأت نموذج وعملت زرين واحد للتصدير وفي

WHEN-BUTTON-PRESSED TRIGGER

كتبت التالي

host ('EXP73 userid=OMAR/OMAR2 tables=(EMP) file=a:fm.dmp');

ونفذا والعملية ماشيه تمام

جينا للاستيراد

وفي الزر الثاني وفي

وفي

WHEN-BUTTON-PRESSED TRIGGER

host ('IMP73 userid=OMAR/OMAR2 tables=(EMP) file=a:fm.dmp');

وهنا بدأت المشكله وهي

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

من عنده الحل ويعطيناه

والسلام عليكم

[عدلت بواسطة ابو عمر عبدالله ت:06-05-2001 س: 09:31 AM]

#9

لا أرى أي مشكلة في طرحك. فهذا هو نهج الأوراكل في الإستيراد. فهي عملية لا تتم بنجاح في حالة وجود الملف المستورد في المستخدم المحدد، فإذا كان موجوداً أتتك بالرسالة table already exists وإذا لم يكن موجود، فتقوم أوراكل بعملية الإستيراد بنجاح. فلا أرى عيب بذلك في كودك.

#10

اخي السني

السلام عليكم

اخي ما اوريد بالضبط ان يقوم الاوراكل باعادة انشاء الجدول سواء كان الجول موجود او غير موجود .

قد تقول لماذا!

الاجابة : فكرتي من الاساس ان يقوم المستخدم بأخذ نسخة من البيانات بنفسه وفي اوقات معينه بحكم ان المستخدم مستقل بجهازه ، وقد تتعرض البانات لحذف بعضها او اضافة بيانات غير مطلوبه ، وقرر المستخدم العوده الى البيانات في تاريخ معين بذلك يتعين حذف الجدول الموجود او الكتابة فوقه المهم اعادة النسخة المحدده بتاريخ معين ومن المستخدم بدون تدخل المبرمج .

ارجوا ان اكون قد وضحت الفكره

#11

هناك خاصية في الأوراكل لتصدير (الجداول) التي تم تغييرها (فقط) بعد آخر عملية تصدير ناجحة. وهي تقوم بتصدير الجدول كاملا، وبالتالي عندما تريد إستيرادة، تقوم عملية الإستيراد بإلغاء الجدول الجديد وإستيراد المعدل. ولكن لا أعتقد بأنها ستفيدك في هذه الحالة. وذلك للسبب الآتي:

إذا كان لديك مستخدمين أ و ب، ويقوم البرنامج يومياً بتصدير البيانات من القاعدة الرئيسية، ويقوم هذين المستخدمين بإستيرادهما. ولنفترض في فترة ما تغيب المستخدم ب لمدة يومين. حدث في اليوم الأول تغيير في الملفين 1 و 2. فستقوم قاعدة البيانات الرئيسية بتصدير كل من الجدولين، وفي اليوم الثاني حدث تغيير في الملف 2 فقط، دونما تغيير في الملف 1، ففي هذه الحالة لن تقوم قاعدة البيانات بتصدير الملف 1، وفي اليوم الثاني، وعندما يأتي المستخدم ب بعد غياب اليومين، ويقوم بإستيراد الملفات، فسيحصل على الملف 2 المعدل فقط، وتكون بيانات الملف 1 غير صحيحة. وتكمن الخطورة في هذه الحالة فيما إذا كان الملف المعدل هو أحد الملفات المرجعية في النظام، مما قد يترتب عليه حدوث خطأ في النظام.

لذا أقترح عليك أن تقوم بعمل ربط بين قواعد البيانات. ويقوم الزناد Trigger بمراجعة البيانات (السطور) التي تم تغييرها في قاعدة البيانات الرئيسية ووضعها في cusror ثم يمسح ما يقابلها في قاعدة المستخدم وإعادة تكوينها، وذلك بناء على تاريخ محدد لكل مستخدم يقوم تلقائياً بحفظ آخر تحديث لقاعدته.

كل هذا بفرض أني قد فهمت سؤالك بصورة صحيحة

#12

الاخ السني

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

كلامك طيب وشكرا على ايضاحك .

اخي ماذكرته في بداية ردك هو ماريده والسبب ان لدي عددة مستخدمين كل له جهاز مستقل غير مربوط بشبكه وعلي كل جهاز نظام خاص بالقسم ، حيث اقوم كل نهاية اسبوع بعمل نسخه من الجداول لكل جهاز ( طبعا لا توجد امكانية ربطهم بشبكة )، وقد فكرت عمل فورم حتى تكون مسؤليتهم وارتاح.

اذا ممكن تعطيني الخاصية وياليت موضحه بمثال لاني بحثت في الوسائط keyword ولم اجد شى علما ان لديPersonal Oracle 7.3 & Developer 6

بارك الله فيك

#13

الموضوع ببساطة عليك عمل تصدير بالصورة التالية

exp {userpassword} file={dump_file.dmp} full=y inctype=incremental

وفي هذا التصدير تقوم قاعدة البيانات بعمل تصدير للبيانات التي تم تغييرها فقط، ويتم إستيرادها بالأمر

imp {userpassword} file={dump_file.dmp} INCTYPE=RESTORE FULL=Y

مع مراعاة المسارات الصحيحة للملفات على الأقراص

[عدلت بواسطة السني ت:07-05-2001 س: 11:37 AM]

#14

الاخ السني

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

صدرت البيانت وعدلت على احد الجداول ثم عملت استيراد ونجحت العملية والحمد لله ، وهذه الطريقة لكامل الجداول .

اخي ( لو ثقلت عليك مافي غيرنا الليله ولعل في النقاش فائده للجميع )وقد قادني ذلك الى :

1- بعد عملية التصدير الى القرص A قمت بحذف الملف dump_file.dmp من على القرص A وحاولت عمل تصدير مره اخرى ولم يقم بالتصدير لانه لم احدث اي تغيير على محتويات الجداول . وافترض اني فقدت القرص واردت ان اعمل نسخة اخرى فلا استطيع الا على الجداول التى حدث لها تغيير ، فهل توجد طريقة اخذ فيها كل مره نسخة كامله من الجداول سواء حدث تغيير او لم يحدث

2- حاولت تصدير جداول معينه باضافة الوسيط (tables=(table1,table2 الى الكود ولم تنجح الطريقه فهل توجد طريقةلتصدير جداول معينه تقوم عملية الإستيراد بإلغاء الجدول الموجودعلى القاعده وإستيراد الموجود على القرص المرن

[عدلت بواسطة ابو عمر عبدالله ت:07-05-2001 س: 01:41 PM]

#15

السلام عليكم

أخي لو أنك وضعت ملف صغير يقوم بحذف الجداول ينفذ من sql ومن ثم تقوم باستعادة النسخة الاحتياطية ، وهذا الإجراء وضع من الشركة لحماية البيانات من الاستعادة التي قد يندم الإنسان على تنفيذها

والمسألة هي أمن معلومات

#16

لدي فكرة، ولكنها نظرية ولم أطبقها لتجربتها.

لم لا تقوم بعمل متغير يأخذ تاريخ اليوم ويضعه في شكل رقم 09052001 مثلا، وعند التصدير تقوم بوضع اسم الملف المصدر بهذا الشكل، وبالتالي يوقم النظام بوضع ملف بإسم مختلف يومياً، وبالتالي لن يحذف الملف السابق عند حفظ التالي، وهكذا تحافظ على كل تصديراتك، وعند الإستيراد يمكنك عمل متغير يسمية المستخدم لتصدير الملف المراد، كما يمكنك عمل قيمة تلقائية لهذا المتغير = تاريخ اليوم - 1، وذلك حتي يكون تاريخ أمس هو القيمة التلقائية.

هي مجرد فكرة، يمكنك تطويرها

#17

الاخ omar_s

السلام عليكم

انا اريد ان اعمل استيراد وتصدير من داخل النموذج (form) وحسب علمي لا يكمن عمل drop لجدول من داخل النموذج

وذا فيه حيلة الحقنا بها

الاخ السني

السلام عليكم

عملت تصدير للجداول التي عندي وا عطاني ملف بحجم 220 ك ثم كررت التصدير واعطاني ملف بحجم 6ك طبعا كتب فوق الملف السابق ، وغيرت اسم الملف وعملت تصدرير ونفس الشي اعطاني ملف بحجم 6ك ، واستنتجت ان الاوراكل يقوم بتسجل عملية التصدير لديه وبالتالى لايفيدني تغيير اسم الملف .

#18

ما أفهمه هو أنك تريد عمل تصدير مرة واحدة يومياً، وهذا هو قصدي، فبتسليم العملاء نسخة من التصدير اليومي سيكون لديهم عدد من ملفات التصدير DUMP يمكنهم الإختيار وتحديد البيانات التي يريدون. ففي مثالي السابق، سيجد الموظف الغائب لمدة يومين عدد من الملفات، وما عليه إلا إستيرادها كلها الواحد تلو الآخر (طول فترة غيابه). ودعك من عملية إلغاء الملفات، فهي لا يمكن عملها من ال ×PL/SQL بل من ال SQL فقط. وطريقتنا هذه قد يكون لديها عيب واحد، وهو إذا تم التصدير مرتين في اليوم الواحد، فإن نتيجة التصدير الثاني ستكون ملف خالى من ملفات البيانات لعدم التغيير في القاعدة، وبالتالي سيتم مسح الملف الصحيح وإبقاء الجديد الخالى. لذا عليك عمل ملف تسجيل log file مهمته عندما يراد عمل تصدير، وبعد تكوين إسم الملف بحسب التاريخ، يقوم النظام بالتأكد من تسجيل ملف بهذا الإسم، فإذا وجد التاريخ، فإن هذا يعني ان تصدير اليوم قد تم ولا يسمح بإعادة التصدير مرة أخرى، وإذا لم يقوم بعملية التصدير، وبعد إكتمال العملية ببننججااحح (مؤكدا مرة أخرى بنجاح) يقوم بتسجيل إسم الملف في ملف السجلات لمنع إعادة التصدير.

فعلا أوراكل تقوم بتسجيل آخر عملية تصدير (ناجحة) للملفات، وبالتالي إذا تمت محاولة تصدير مع incremental فلا تعيد تصدير الملفات التي لم يحدث فيها تغيير. ودعنا نشبه ذلك بعملية الحفظ في الوورد مثلا. فإذا فتحت ملف دون عمل تغيير فيه، وحاولت إغلاقه، فلن تسألك تأكيد الإغلاق. ولكن إذا تم تغيير في الملف، فإنها تطلب منك تأكيد الإغلاق. هذا مع إختلاف لمعطيات والنتائج. ولكن الطريقة التي يقوم بها السيطرة على الأمر من الخلفية فواحدة

[عدلت بواسطة السني ت:10-05-2001 س: 08:50 AM]

#19

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

الاخوه الافاضل

انا اسف جدا لتاخري في ارسال النماذج الخاصه بعمليه

ال Export والImport

وذلك لسفري الى سوريا

وكما تعلموا فإن الانترنت فى سوريا غير متوفر الا بصعوبه بالغه

والحمد لله انا عدت الان الى مدينه الرسول صلى الله عليه وسلم

وشكرا للاخ أبو عمر عبدالله على السؤال على

وانا سوف أقوم النا بأرسال ال Forms للاخوه الذين طلبوه منى

وارسلوا لى ايميلاتهم على الموقع طبعا

ارجوا ان تحصلوا منه على ماتتوقعوا وشكرا لكم

كما ارجوا من الاخ ابو عمر ان يرسل لى عنوان ايميله لكى اتمكن من ارسال النماذج له وطبعا اي شخص يرغب بذلك

عمر باعقيل

المدينه المنوره

baaqeel@onebox.com

[عدلت بواسطة baaqeel ت:11-05-2001 س: 08:22 AM]

#20

لقد وصلت الملفات وسوف اضعها بالموقع في اقرب وقت ممكن

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#21

الاخ عمر باعقيل

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

الحمد لله على السلامة وياهلا ومرحبا ، ارسلت البريد وبالانتظار

الأخ السني

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

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

واستمرارا لما سبق خطرت لي فكرة ونفذتها واعتقد انها ناجحة أتمنى معرفة رأيك ورأي الاخوة في المنتدى وهي:

في زر التصدير

1- اقوم باضافة سجل الى الجدول

........ insert into

2- اقوم بعملية التصدير

exp {userpassword} file={dump_file.dmp} full=y inctype=incremental

3- احذف السجل الذي تمت اضافته

......... delete from

في زر الاستيراد

1- اقوم بعملية الاستيراد

imp {userpassword} file={dump_file.dmp} INCTYPE=RESTORE FULL=Y

2- احذف السجل الذي تمت اضافته اثناء عملية التصدير

......... delete from

وبهذه الطريقة اكرر عملية الاستيراد والتصدير دون عوائق

فما رأيكم

#22

بسم الله الرحمن الرحيم

إلى جميع الأخوة الذين بحثوا أمر الاستيرد

imp

وعانوا من مشكلة وجود الجدول الذي يتم عليه الاستيراد حيث تعطي أوراكل رسالة خطأ. أقول أضيفوا العامل التالي إلى سطر أمر الاستيراد:

IGNORE=Y

وجربوا والله الموفق

#23

الأخ أبو عمرعبد الله

تعقيباً على ماذكرته في السابق فإنه يمكن إنشاء جدول وحذفه من

داخل نموذج باستخدام الأمر forms_ddl('');

مثلا لإنشاء جدول

forms_ddl('create table ooo(id number(10))');

لحذف نفس الجدول

forms_ddl('drop table ooo');

طبعاهذه باستخدام when-button-pressedجربها ان شاء الله تشتغل معاك وتفيد في عملية التصدير والإستيراد ،،،

مع تحيــاتي

#24

الاخ الفاضل محمد الشنقيطي

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

فعلا جربتها واشغلت معي وشكر لك على اهتمامك

كما اشكر الاخ الفاضل عمر باعقيل على ارساله النماذج

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

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