Я должен сказать, что вы абсолютно правы с точки зрения классического подхода:
Важно помнить, что универсальных инструментов нет. Тип программного обеспечения, его размер, цели компании и рыночная ситуация, навыки команды и многое другое влияют на решение о том, какой подход использовать в вашем конкретном случае.
Для T-SQL Microsoft имеет выпуск базы данных Комплекта Команды VS (хотя, я верю теперь в dev SKU). Эта ссылка говорит о записи Вашего собственного статического правила анализа кода для T-SQL: http://blogs.msdn.com/gertd/archive/2009/01/01/creating-t-sql-static-code-analysis-rules.aspx
Oracle имеет некоторый малоизвестный встроенный материал.
Попытка это в 10-граммовом Выпуске 2 или выше:
ALTER SESSION PLSQL_WARNINGS = 'ENABLE:ALL';
Затем компилируют Ваш МН пакет / пакет SQL (не анонимный блок).
Ближайшая вещь, о которой я знаю, - эти предполагаемые и фактические функции плана запросов , доступные в управление Studio SQL Server, но я предположил бы, что существует подобно для другой механизмы SQL.
Жаба показывает утилита CodeXpert для статичной проверки МН / кода SQL.
утилита может или просканировать файлы или соединиться непосредственно с базой данных Oracle. Насколько я видел, работы только над Windows.
Не то, чтобы я знаю. МН Regardng / SQL, так как Oracle не выставляет большую часть их МН механизма компиляции / механизма компиляции SQL ее твердое для нахождения поддержки инструмента.
большинство, которое я смог сделать, должно запросить словарь данных, чтобы сделать, вещам нравится, отображают зависимости от пакета.
Для PL / SQL Toad CodeXpert можно расширить с помощью Sonar , инструмента с открытым исходным кодом для управления качеством кода через плагин.
Я думаю, это было бы возможно также написать плагин для T-SQL.
Наша поисковая система исходного кода SD - это инструмент для интерактивного поиска в больших базах исходного кода на многих компьютерных языках (включая PL / SQL) эффективно, предварительно индексируя файлы исходного кода по их токенам (идентификаторам, числам и т. д.). В качестве побочного эффекта этапа предварительного индексирования он вычисляет стандартные метрики: SLOC, Cyclomatic, Halstead, ... для каждого файла и создает отчет. См. Пример на сайте.
Наш SD CloneDR - это инструмент для анализа больших баз кода на наличие избыточного кода. Мы применили его к PL / SQL и увидели около 45% кода, задействованного в клонах. YMMV. CloneDR работает с большим количеством языков; см. сайт, посвященный пробному обнаружению клонов, запускаемому на некоторых из этих языков.
РЕДАКТИРОВАТЬ 10/4/2010:
Наша поисковая система исходного кода разработана для обеспечения очень быстрого поиска по большим кодам на смешанных языках. Это удается путем предварительной индексации исходного кода. В качестве побочного эффекта этапа индексации он вычисляет различные метрики, включая цикломатические меры и меры сложности Холстеда.
Только что добавлено: не инструмент статического анализа, а инструмент, который обычно представляет интерес для людей, интересующихся качеством программного обеспечения: наш TestCoverage для хранимых процедур PLSQL .