أدوات سهلة الاستخدام لاسترداد البيانات من قاعدة بيانات SQL Server

StackOverflow https://stackoverflow.com/questions/3873861

سؤال

لدينا العديد من قواعد بيانات SQL Server التي تحتوي على قياسات من المولدات التي نبنيها. ومع ذلك ، لا يمكن الوصول إلى هذه البيانات المفيدة إلا لعدد قليل من المهندسين لأن معظمهم غير مألوفين بـ SQL (بما في ذلك أنا). هل هناك أي أدوات تسمح للمهندس باستخراج مجموعات فرعية مختارة من البيانات من أجل تحليلها في Excel أو بيئة أخرى؟ الأداة المثالية

  1. حماية قاعدة البيانات من أي تغييرات عرضية ،
  2. لا تتطلب معرفة SQL لاستخراج البيانات ،
  3. كن سهل الاستخدام للغاية ، على سبيل المثال مع واجهة المستخدم الرسومية لتحديد الحقول والنطاق الزمني المختار ،
  4. السماح بتصدير قيم البيانات في ملف يمكن قراءته بواسطة Excel ،
  5. لا تتطلب مشاركة/إدخال من مدير قاعدة البيانات لتشغيل مهمة الاستخراج ، و
  6. كن سهلاً بالنسبة لمدير قاعدة بيانات مبتدئ لإعداده.

شكرا على أي توصيات أو اقتراحات.

هل كانت مفيدة؟

المحلول

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

لدينا موقف مماثل ، وننشئ عمومًا إجراءات مخزنة مخصصة للمستخدمين "للاتصال" ، والسماح فقط بالوصول إلى خادم النسخ الاحتياطي الذي يعمل "على الهواء مباشرة" تقريبًا.

مستخدمونا على دراية بـ Excel ، لذلك أقوم بإنشاء إجراء مخزن مع معلمات وافرة لتصفية/التخصيصات ويمكنهم بسهولة تسميته باستخدام شيء مثل:

EXEC YourProcedureName '01/01/2010','12/31/2010','Y',null,1234

أقوم بتوثيق بالضبط ما تفعله المعلمات ، وهي جيدة بشكل عام من هناك.

لإعداد استعلام Excel ، ستحتاج إلى إعداد مصادر البيانات على جهاز الكمبيوتر الخاص بالمستخدم (لوحة التحكم - مصادر البيانات - ODBC) ، والتي ستختلف قليلاً اعتمادًا على إصدار Windows الخاص بك.

من In Excel ، تحتاج إلى إعداد "الاستعلام" ، وهو مجرد EXEC أمر من الأعلى. اعتمادًا على إصدار Excel ، يجب أن يكون شيئًا مثل: القائمة - البيانات - استيراد البيانات الخارجية - استعلام قاعدة بيانات جديدة. ثم اختر مصدر البيانات ، وتوصيل ، وتخطي صانع مخطط الجدول وأدخل SQL أعلاه. أيضًا ، لا تحاول إجراء إجراء واحد تفعل كل شيء ، وقم بإجراء مختلف بناءً على ما يقومون به.

بمجرد أن تكون البيانات على ورقة Excel ، يقوم مستخدمونا بسحبها إلى أوراق أخرى ويتعاملون معها حسب الرغبة.

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

نصائح أخرى

أوصيك ببناء خاصتك في Excel. يمكن لـ Excel إجراء استعلامات إلى قاعدة بيانات SQL Server الخاصة بك من خلال اتصال ODBC. إذا قمت بذلك بشكل صحيح ، فيجب على المستخدم النهائي القيام بأكثر من ذلك بقليل من النقر فوق زر "Get Data". ثم يمكنهم الوصول إلى جميع قوة واجهة المستخدم الرسومية لـ Excel لعرض البيانات.

يسمح Excel بتحميل إخراج الإجراءات المخزنة مباشرة في علامة تبويب. هذا IMO هو أفضل طريقة: لا يحتاج المستخدمون إلى معرفة SQL ، فهم فقط يستدعيون إجراء ، ولا توجد أجزاء متحركة إضافية إلى جانب Excel وقاعدة البيانات الخاصة بك.

اعتمادًا على نسختك من SQL Server ، سأبحث عن بعض أدوات BI الممتازة للخدمة الذاتية مع الإصدارات اللاحقة مثل Builder التقارير. هذا يشبه نسخة مجردة من Visual Studio مع كل البتات المعقدة التي تم إخراجها وفقط بتات الإبلاغ البسيطة المتبقية.

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

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top