Сбор данных / Вопрос поиска - PullRequest
0 голосов
/ 30 марта 2011

Наша база данных SQL Server 2005 содержит почти 100 различных таблиц.Мы собираемся предоставить функцию для поиска некоторой информации в соответствии с пользовательскими фильтрами.Конфигурация нашего фильтра будет довольно сложной.Пользователь может легко создать фильтр, объединяющий более 20 таблиц со сложными условиями.

Чтобы уменьшить сложность объединения, мы планируем создать пару представлений SQL Server.Но само по себе этого решения недостаточно для упрощения SQL.Мы собираемся сгенерировать SQL согласно конфигурации фильтра.SQL будет генерироваться динамически.(Я не уверен, как долго этот SQL будет… Есть ли максимальная длина для SqlCommand?) SP - другой вариант ...

Вы сталкивались с подобной ситуацией?У вас есть хороший совет или решение для меня?

Спасибо!

Ответы [ 2 ]

1 голос
/ 30 марта 2011

Вы должны прочитать Проклятие и благословения динамического SQL , чтобы знать о некоторых подводных камнях.

1 голос
/ 30 марта 2011

Я бы предложил создать базу данных отчетов, которая нормализует ваши данные, поэтому вам не нужны сложные запросы. Также убедитесь, что все запросы параметризованы, чтобы избежать атак с использованием SQL-инъекций.

Надеюсь, это поможет.

...