4

我的 SQL Server 2005 数据库中的某些表被命名为 lu.[TableName] 而不是 dbo.[TableName]。卢代表什么?

注意:我已经尝试过谷歌

4

5 回答 5

11

这将是 SQL Server 2005 中的一个模式 - 您可以使用 CREATE SCHEMA 自己创建它。

模式可用于分离逻辑上属于一起的数据库对象,例如将所有与人力资源相关的表放入“HR”模式等。DB 模式有点像.NET 或 XML 命名空间。

架构也可用于处理权限,例如,您可以在架构级别将权限委派给用户和角色。

查看广泛使用模式的示例 AdventureWorks 数据库。

这也是您应该始终使用“dbo”限定数据库对象的原因之一。字首。如果您不这样做,SQL Server 的查询引擎将首先必须检查您的默认架构(可能与 dbo 不同)以查找该名称的对象,如果没有找到,它会转到 dbo 架构。如果您总是使用“dbo.YourTableName”,则查询引擎会预先知道在哪里查找 - 性能提升很小(乘以数千次访问)。

于 2009-08-25T20:39:23.080 回答
7

'lu' 是查找表的缩写

于 2009-10-06T10:21:49.573 回答
2

lu 是一个单独的模式(dbo 是默认值)

有关架构的更多信息,这看起来很有帮助:SQL Server 架构有什么好处?

于 2009-08-25T20:39:39.663 回答
1

SQL 服务器允许多个模式-dbo作为默认模式 - 您的数据库具有辅助(可能更多)模式lu

于 2009-08-25T20:39:04.390 回答
1

lu 是模式名称。

dbo 代表数据库所有者。lu 可能是创建其他表的用户帐户

于 2009-08-25T20:39:24.377 回答