我们的SQL Server 2005数据库有近100个不同的表。我们将提供一个根据用户定义的过滤器搜索某些信息的功能。我们的过滤器配置将非常复杂。用户可以轻松地创建一个筛选器,该筛选器可以连接20多个具有复杂条件的表。
为了降低连接的复杂性,我们计划创建两个SQL Server视图。但该解决方案本身似乎不足以简化SQL。我们将根据过滤器配置生成SQL。SQL将动态生成。(我不确定SQL…会有多长时间SqlCommand是否有最大长度限制?)SP是另一种选择...
你有没有遇到过类似的情况?你对我有什么好的建议/解决方案吗?
谢谢!
发布于 2011-03-30 09:02:41
您应该阅读The Curse and Blessings of Dynamic SQL以了解其中的一些缺陷。
发布于 2011-03-30 09:02:06
我建议创建一个报告数据库来反规范化您的数据,因此您不需要复杂的查询。还要确保所有查询都是参数化的,以避免sql注入攻击。
希望这能有所帮助。
https://stackoverflow.com/questions/5480603
复制相似问题