在商店中添加dbo或支持proc

时间:2015-12-10 04:59:53

标签: sql sql-server

我的一位同事给了我一项任务,确保存储过程中的所有表名和页面都包含相关的模式?

例如,如果我在数据库中有dbo.table1的表,那么在查询中我是否有:

Select * from table1

他希望我将其改为:

Select * from dbo.table1

对于以支持开头的页面,这是相同的。

添加像dbo.之类的方案有什么意义在手动编写SQL时的开始?是否假设表现更好,因为它似乎知道表格在哪里,即使我在开始时不包括.dbo?

我正在使用SQL Server 2012及其管理工作室。

谢谢

2 个答案:

答案 0 :(得分:1)

如果在所有查询中编写架构,则可能不会注意到性能。如果你没有指定它,引擎将查看数据库中的所有模式(我不太确定引擎是否也会检查sys模式),直到它找到你所使用的表格为止。重新获取数据;它建议作为编写它的最佳实践,因为您告诉引擎需要搜索表格的模式。

我希望这个答案很有帮助。

答案 1 :(得分:0)

dbo是一个模式,用作mssql数据库中表的部分命名约定

查看此帖子SQL Server edits the table name with dbo as prefix