دليل استيراد برامج SQL النصية إلى قاعدة بيانات
سؤال:
كيف يتم استيراد برامج SQL المحفوظة إلى قاعدة بيانات SQL Server؟
الجواب:
توجد طريقتان لحفظ البيانات المستردة التي تم تكوينها باستخدام أداة SQL Server Repair Toolbox:
- يمكنك حفظ البيانات مثل برامج SQL النصية على قرص صلب وتنفيذ هذه البرامج النصية وقت الحاجة. سوف يؤدي ذلك إلى إنشاء جداول وكائنات (فهارس وإجراءات ووظائف وغيره)، ثم استيراد البيانات إلى هذه الجداول.
- يمكنك أيضًا تشغيل برامج SQL النصية هذه باستخدام أداة SQL Server Repair Toolbox من خلال تكوين سلسة اتصال إلى مصدر بيانات معين (SQL Server أو قاعدة بيانات أخرى).
يمكن أن تختلف برامج SQL النصية بصرف النظر عن حقيقة أنها قد تعتمد على نفس ملفات قاعدة البيانات. وهذا يرتبط بميزات خاصة لجمل معينة في الطلبات التي يتم تنفيذها بعد إنشاء اتصال الخادم عن طريق ADO، بالإضافة إلى تنفيذ استعلامات SQL في محلل الاستعلامات Query Analyzer المرفق مع Microsoft SQL Server (استخدام “:”، وأوامر Go، وغيره).
- تحويل البيانات المستردة إلى برامج SQL نصية وحفظها على القرص الصلب
- عرض البيانات المحفوظة
إذا اخترت حفظ البيانات على القرص الصلب، سوف يقوم البرنامج تلقائيًا بإنشاء مجلد فرعي، الذي سيتم إنشائه في مجلد محدد بواسطة المستخدم. وسيتم حفظ كافة البرامج النصية هنا. وتتوافق أسماء البرامج النصية التي تم إنشاؤها مع قواعد التسمية وتتألف من حروف وأرقام، حيث تشير الكلمات إلى دور البرنامج النصي، بينما يشير العدد إلى رقمه. وفيما يلي أنواع عديدة للبرامج النصية، على سبيل المثال:
- Types*.sql – أنواع بيانات محددة بواسطة المستخدم.
- Tables*.sql – جداول.
- Indexes*.sql – مفاتيح ومؤشرات رئيسية.
- ForeignKeys*.sql – مفاتيح خارجية.
- Procedure*.sql – إجراءات مخزنة.
- Function*.sql – وظائف محدد بواسطة المستخدم.
- View*.sql – طرق عرض.
- Triggers*.sql – مشغلات.
- Data*.sql – جداول بيانات.
تُستخدم الأرقام المسلسلة للبرامج النصية لفصل البيانات وحفظها في عدد وافر من المستندات الصغيرة بدلا من ملف واحد كبير. يجب ملاحظة أن كل ملف جديد من نوع "بيانات" يمكن أن يشمل بيانات من جدول واحد فقط.
تنبيه: قد تكون الأرقام مفقودة في بعض الملفات، ما يعني أن البيانات مفقودة في بعض الجداول أو أنها غير مكتملة.
- تسلسل تنفيذ البرنامج النصي
يمكنك استخدام تسلسل التنفيذ الموصى به في الشكل التوضيحي التالي:
يعتمد تسلسل تنفيذ البرنامج النصي على القيود الموجودة للبيانات الحالية وهياكل الجداول. الرجاء الانتباه على وجه الخصوص لهذه العوامل:
- حدد المفتاح الرئيسي المطابق إذا أردت إنشاء مفتاح خارجي. بفضل هذا الأمر، سيتم حفظ هذه العمليات في ملفات عديدة والتي يجب تنفيذها في هذا التسلسل.
- قبل إنشاء الفهارس والمفاتيح الخارجية، يملأ البرنامج الجداول بالبيانات. وهذا يكون مطلوبًا، نظرًا لأنه يتم تنفيذ فحص التكامل المرجعي أثناء ملء الجدول الذي تم تحديد مفتاح خارجي له. عند ملء الجداول ذات مفاتيح خارجية بالجداول ذات مفاتيح رئيسية مطابقة، يحدث خطأ. باستثناء ذلك، هناك ميزة أخرى لهذه الطريقة. إذا كانت البيانات المستردة تتعارض مع المفتاح الرئيسي، والفهرس والفريد وغير، يتم ملء الجدول بأي حال، ولا يتم إنشاء أي قيود (الفهرس، المفتاح الرئيسي وغيره). وإذا كان المستخدم يحتاج نوع مختلف من السلوك، فيمكنه اختيار تسلسل تنفيذ برنامج نصي خاص.
- إنشاء هذه الكائنات مثل الإجراءات والوظائف وطرق العرض والمشغلات في قاعدة البيانات له سماته الخاصة، نظرًا لأن هذه الكائنات قد تكون معقدة للغاية ولها تبعياتها المداخلة. يمكن أن يشير الإجراء إلى كائنات إجراءات أخرى، ويمكن أن تشير طريقة العرض إلى وظيفة، ويمكن أن يشير المشغل إلى كافة أنواع الكائنات. بالتالي، فإن البرنامج لن يساعد في فك تشابك هذه العقدة من التبعيات. يتعين على المستخدمين يدويًا تحديد كافة التبعيات وإطلاق SQL بالتسلسل الصحيح. ومن بين الطرق الممكنة الأخرى إطلاق كافة البرامج النصية عدة مرات حتى ينتهي ظهور رسائل الخطأ.
- ملف Install.bat
يتم إنشاء ملف install.bat لضمان تنفيذ البرنامج النصي تلقائيًا. يُطلق هذا الملف كافة البرامج النصية التي تم حفظها في السابق بواسطة هذا البرنامج. ويكون تسلسل تنفيذ البرنامج النصي مثل تسلسل تنفيذ البرامج النصية في قاعدة البيانات. يتطلب ملف الدفعة هذا تثبيت أداة isqlw، والذي يتم تضمينه في جانب العميل بخادم MS SQL Server، الرجاء تحديد معلمات مثل "اسم الخادم"، "اسم قاعدة الباينات"، "اسم المستخدم"، "كلمة المرور" في سطر الأمر. على سبيل المثال: install.bat SQLServer SQLDatabase SQLUser SQLUserPassword.
ملاحظات:
- يجب تحديد المعلمات عن طريق المسافات. إذا كانت إحدى المعلمات تتضمن مسافة، فيلزمك تحديدها في أقواس ثنائية.
- لا يمكن تبديل المعلمات.
إذا تم بدء ملف install.bat بدون معلمات، فسوف تشاهد تعليمات بسيطة حول إطلاق هذا الملف.
- ملف InstallTrusted.bat
إذا كنت مخولا في خادم Microsoft SQL Server عن طريق حساب Windows، فاستخدم ملف InstallTrusted.bat. يتضمن ملف InstallTrusted.bat معلمتين: اسم الخادم واسم قاعدة البيانات.
مثال: installtrusted.bat SQLServer SQLDatabase يمكن العثور على معلومات تفصيلية حول التخويل عن طريق حساب Windows هنا: https://docs.microsoft.com/ar-sa/sql/relational-databases/security/authentication-access/principals-database-engine?redirectedfrom=MSDN&view=sql-server-ver15
- عرض البيانات المحفوظة