كيفية القيام بما يلي: تحليل الرمز Transact SQL للبحث عن العيوب
يمكنك تحليل الخاصة بك Transact-SQLتعليمات برمجية عند الطلب، عند التي بنية مشروع الخاص بك باستخدام واجهة مستخدم، أو عندما تقوم بنية مشروع الخاص بك باستخدام MSBuild. بعد تعليمات برمجية هو تحليلها، واحد أو أكثر من أخطاء أو تحذيرات يظهر إذا تعليمات برمجية قد يحتوي على عيوب التصميم أو تسمية أو الأداء. يمكنك النقر فوق هذه الأخطاء والتحذيرات لعرضها تعليمات برمجية للذي ربط. يمكنك أيضا عرض مزيد من المعلومات إلى فهم الأسباب الخاصة بها وما إذا كان قد تحتاج بشكل أفضل إلى منع عليها. ل المزيد من المعلومات حول تحليل تعليمات برمجية في Visual Studio Premiumو Visual Studio Ultimate، راجع يتم الآن التحليل? قاعدة بيانات تعليمات برمجية إلى تحسين جودة تعليمات برمجية.
قبل أن تقوم بتحليل تعليمات برمجية الخاصة بك، قد تحتاج إلى تكوين القواعد التي سيتم تشغيل كجزء من التحليل. لمزيد من المعلومات، راجع كيفية القيام بما يلي: قم بتمكين و تعطيل قواعد معينة لتحليل ثابتة من تعليمات برمجية في قاعدة بيانات. يمكنك تكوين مجموعات مختلفة من قواعد مختلفة بنية تكوينات. يمكن أن يكون لديك المطورين تشغيل التعيين أصغر من القواعد إلى التحقق من المشاكل عام قبل يودع تعليمات برمجية الخاصة بهم، ويمكنك تشغيل تحليل المزيد comprehensive على أساس ليلا.
يتم الآن التحليل? تعليمات برمجية في الإصدار من قاعدة بيانات
إلى تحليل تعليمات برمجية Transact-SQL في قاعدة بيانات مشروع
قم بفتح الحل الذي يحتوي على مشروع قاعدة بيانات الخاصة بك.
في قائمة بيانات ، أشر إلى تحليل تعليمات برمجية الثابتة، و انقر فوق تشغيل.
يتم تحليل التعليمة البرمجية في مشروع قاعدة بيانات الخاصة بك، وتظهر أية تحذيرات وأخطاء في قائمة الأخطاء .
إلى عرض تعليمات برمجية المصدر التي تسببت في الخطأ أو التحذير
في قائمة الأخطاء ، انقر نقراً مزدوجاً فوق الخطأ أو التحذير. يمكنك أيضا تمييز الخطأ أو التحذير و اضغط على Enter الزر.
Transact-SQLediإلىr فتح وعرض التعليمة البرمجية إلى التي تتعلق بالخطأ أو التحذير. عند الإمكان، المؤشر هو وضع في العبارة التي تسببت في الخطأ أو التحذير.
قم بإجراء أحد الخطوتين التاليتين:
قم بإصلاح المشكلة فورا.
قم بإنشاء عنصر عمل حيث أنت أو عضو آخر في الفريق سيتم إصلاح هذه المشكلة لاحقاً.
لمزيد من المعلومات، راجع كيفية القيام بما يلي: عرض أساسيات أساسيات المنطقية.
منع ظهور خطأ أو تحذير إذا كان يمكن بأمان تجاهله.
إذا قمت بإيقاف خطأ أو تحذير، فلن تظهر عند تحليل تعليمات برمجية الخاصة بك مرة أخرى. لمزيد من المعلومات، راجع كيفية القيام بما يلي: منع تحذيرات تحليل تعليمات برمجية في قاعدة بيانات.
إلى عرض مزيد من المعلومات حول الخطأ أو التحذير
في قائمة خطأ ، قم بإجراء إحدى الخطوات التالية:
انقر فوق الخطأ أو التحذير، و اضغط F1.
انقر نقراً مزدوجاً فوق الخطأ أو التحذير، وانقر فوق تعليمات "خطأ في إظهار" .
موضوع "التعليمات" التي هو المقترن بالخطأ أو التحذير الذي يظهر. صورة إلى يحتوي على معلومات حول السبب المشكلة وكيف يمكن تصحيح تعليمات برمجية الخاصة بك وما إذا كان قد تحتاج إلى منع الخطأ أو التحذير.
يتم الآن التحليل? تعليمات برمجية بواسطة استخدام MSBuild
قد تقرر إلى تحليل تعليمات برمجية باستخدام MSBuildإذا أردت إلى يطبق التعيين comprehensive بالمزيد من القواعد أثناء التشغيل ليلا. يمكنك تكوين قواعد لكل تكوين البنية وقم بتحديد التكوين الذي يتضمن قاعدة أو القواعد التي تريد إلى تطبيق.
يمكنك استخدم ملف إجابة لتوفير وسيطات سطر الأوامر إلى MSBuild. وهذا ملف يمكن أن يحتوي على أية رموز تبديل سطر الأوامر الصالحة ل MSBuild، بما في ذلك تلك التي يمنع خصائص مشروع. لمزيد من المعلومات حول ملفات الاستجابة، راجع ملفات الاستجابة MSBuild. لمزيد من المعلومات حول الأمر-خط خيارات من أجل MSBuild، راجع مرجع سطر الأوامر MSBuild.
عندما تقوم بتحليل تعليمات برمجية الخاصة بك من الأمر تعجيل، تتم كتابة نتائج إلى ملف XML يسمى StaticCodeAnalysis.نتائج.xml. يمكنك العثور على هذا ملف في مجلد مشروع الخاص بك في المجلد الفرعي SQL. يمكنك تحديد اسم ملف مختلف بواسطة تجاوز القيمة خاصية مشروع ResultsFile.
إلى تحليل تعليمات برمجية Transact-SQL في مشروع قاعدة بيانات الخاصة بك من تعجيل الأوامر
افتح إطار موجه أوامر.
هام
لتشغيل MSBuild.exe، يجب عليك استخدام Visual Studioالأمر تعجيل، أو يجب تشغيل الملف الدفعي vsvars32.bat في المجلد الذي يعين متغير بيئة%% VS80COMNTOOLS.
قم بالاستعراض إلى الدليل مشروع الخاص بك.
في تعجيل الأوامر، اكتب سطر أوامر مشابه للمثال التالي:
MSBuild /t:StaticCodeAnalysis /p:Configuration=Release DatabaseProject.dbproj
ملاحظة
يجب أن يكون MSBuild.exe مسار الذي يعين متغير بيئة مسار الخاصة بك.
قم بمراجعة الإخراج من MSBuild.exe. إخراج مثل كـ يظهر ما يلي:
Microsoft (R) Build Engine Version 4.0.30115.0 [Microsoft .NET Framework, Version 4.0.30115.0] Copyright (C) Microsoft Corporation 2007. All rights reserved. Build started 9/11/2008 3:38:29 PM. Project " C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\DatabaseProject.dbproj" on node 0 (StaticCodeAnalysis target(s)). Creating a model to represent the project... Loading project files... Building the project model and resolving object interdependencies... Validating the project model... 1 problem has been detected C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\SCHEMA OBJECTS\SCHEMAS\DBO\PROGRAMMABILITY\STORED PROCEDURES\sp_ProcedureName.proc.SQL(1,24): StaticCodeAnalysis warning : SR0014 : Microsoft.Rules.Data : Data loss might occur when casting from ASCII String(1) to NChar(1). [C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\DatabaseProject.dbproj] One problem has been detected. The results are saved in C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\sql\release\DatabaseProject.StaticCodeAnalysis.Results.xml. Done Building Project " C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\DatabaseProject.dbproj" (StaticCodeAnalysis target(s)) -- FAILED. Build succeeded. " C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\DatabaseProject.dbproj" (StaticCodeAnalysis target) (1) -> (DspStaticCodeAnalysis target) -> C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\SCHEMA OBJECTS\SCHEMAS\DBO\PROGRAMMABILITY\STORED PROCEDURES\sp_ProcedureName.PROC.SQL(1,24): StaticCodeAnalysis warning : SR0014 : Microsoft.Rules.Data : Data loss might occur when casting from ASCII String(1) to NChar(1). [C:\Users\UserName\Documents\Visual Studio 2010\Projects\SolutionName\DatabaseProject\DatabaseProject.dbproj] 1 Warning(s) 0 Error(s) Time Elapsed 00:00:07.07
راجع أيضًا:
المهام
الإرشادات التفصيلية: Analyze Transact-SQL Code for an Existing Database
المبادئ
يتم الآن التحليل? قاعدة بيانات تعليمات برمجية إلى تحسين جودة تعليمات برمجية
Analyzing تعليمات برمجية مُدارة Quality by Using Code Analysis