سؤال

أحاول إضافة بعض الإجراءات المخزنة إلى عملية بناء في Visual Studio (باستخدام MSBuild).

لديّ مشروع قاعدة بيانات (*.DBP) تمت إضافته إلى الحل الخاص بي ، ولكن على عكس بعض مشاريع قاعدة البيانات الأخرى المتاحة في VS لا يمكنني إنشاءه أو تشغيله. (أعتقد أن هذا هو ملف المشروع الذي أريده حيث أستخدم SQL2000)

كيف يمكنني الحصول على البرامج النصية SQL لتشغيلها أثناء بناء المشروع؟ يمكنني تشغيل البرامج النصية بالنقر بزر الماوس الأيمن والضغط على التشغيل.

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

المحلول

لم يتم تصميم مشاريع قاعدة البيانات مثل المشاريع العادية. إذا كنت ترغب في تنفيذ البرامج النصية داخل هذا المشروع ، فستكون نصيحتي هي تمديد المشروع (المشاريع) المرتبطة التي تتوافق مع MSBUILD (CSPROJ ، VBPROJ ، إلخ) والمرجع/تنفيذ البرامج النصية الخاصة بك من هناك باستخدام أداة الاختيار الخاصة بك.

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

FWIW ، يتعين علينا دعم SQL Server 2000 ، 2005 ، 2008+ ، وبالتالي تصبح المهمة أصعب بكثير ؛ Think Nvarchar (Max) (2005+) vs Ntext (2000+) بالإضافة إلى جميع عمليات إعادة تسمية SP ، إلخ بين الإصدارات. لقد أردنا أيضًا برنامج نصي واحد يستخدمه المطورون ، ضمان الجودة والمثبت لضمان الاتساق. لذلك كان نهجنا هو أداة مخصصة سمحت بدائل الكلمات/الكلمات الرئيسية داخل البرامج النصية ، والتي توفر المرونة بين إصدارات خادم SQL المختلفة وتثبيتات العملاء (على سبيل المثال تفاصيل المستخدم/تسجيل الدخول ، وأسماء DB) ، وكذلك التكامل في العديد سطر الأوامر ، MSBuild ، MSI Custom Action باستخدام مشاريع WIX ، أو أي شيء نحتاجه للتشغيل منه.

نصائح أخرى

يمكن بناء مشاريع قاعدة البيانات.

لا يمكن تشغيلها - يمكن نشرها.

عند النشر ، يقوم المشروع ببناء ثم ينشر. سيتم نشر الكود جنبا إلى جنب مع البرامج النصية قبل بناء ما قبل البناء والبرامج النصية قبل النشر وما بعد النشر.

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

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