SQL中的查询设计实践 我正在为MS Access 2007中的数据库建立查询,我想知道我当前的设计实践是否达到了标准。基本上,数据库是在我来之前配置的,但是我被赋予了构建高效查询以提取数据的责任
我当前的查询很小,很简单,每次只完成2-3个任务(有时只有1个)。我之所以采用这种方法,是因为我对SQL完全陌生,我发现处理许多简单的查询和使用报表来整合数据更容易,而不是构建非常复杂的查询,这些查询1)很难构建(对我来说,无论如何)2)很难维护 我只是想知道是否有人拥有查询设计的最佳实践,您是否可以就上面列出的方法向我提供一些具体的反馈,以及我是否应该开始进行复杂的查询,还是只使用简单的查询和报告来整合相关数据SQL中的查询设计实践 我正在为MS Access 2007中的数据库建立查询,我想知道我当前的设计实践是否达到了标准。基本上,数据库是在我来之前配置的,但是我被赋予了构建高效查询以提取数据的责任,sql,database,ms-access,Sql,Database,Ms Access,我当前的查询很小,很简单,每次只完成2-3个任务(有时只有1个)。我之所以采用这种方法,是因为我对SQL完全陌生,我发现处理许多简单的查询和使用报表来整合数据更容易,而不是构建非常复杂的查询,这些查询1)很难构建(对我来说,无论如何)2)很难维护 我只是想知道是否有人拥有查询设计的最佳实践,您是否可以就上面列出的方法向我提供一些具体的反馈,以及我是否应该开始进行复杂的查询,还是只使用简单的查询和报告来整合相关数据 谢谢。我的拙见是,不管DB引擎是像MSSQL或Oracle那样大而可怕,还是像SQ
谢谢。我的拙见是,不管DB引擎是像MSSQL或Oracle那样大而可怕,还是像SQLite那样小而简单,每个查询(或存储过程或任何其他数据处理单元)都应该只负责一个函数。我在任何地方都使用这个原则(不仅仅是在DB开发中),我可以说它是有效的。
如果您不确定,请尝试阅读有关重构的书籍,例如Fawler。我认为他的原则适用于任何开发领域。如果您将数据存储在MSAccess中,那么您的数据库不能太大,您所做的任何优化都会受到MSAccess施加的约束的限制。如果更好(更优化)的查询是一个目标,那么将数据从Access迁移到SQL Server可能会使您在未来的开发中具有更好的灵活性。您可以利用缓存的执行计划、存储过程和视图。 这可能意味着您需要提高您的T-SQL技能来实现这一点 因此,请权衡您在问题中提出的选项: 1.保持代码简单(以您当前的技能水平为准) 2.履行为数据提取创建高效查询的职责
SQL Server Express可能是一个很好的起点(它是免费的)。回答这个问题的人并不是从访问的角度来看这个问题的,因此我将作为自1996年以来一直专职创建Access应用程序的人提供一些观察 首先,在Access应用程序中有几个地方可以使用SQL: