lu. [TableName] вместо dbo. [TableName]? - PullRequest
3 голосов
/ 26 августа 2009

Некоторые таблицы в моей базе данных SQL Server 2005 названы lu. [TableName] вместо dbo. [TableName]. Что означает Лу?

Примечание: я уже попробовал Google

Ответы [ 5 ]

10 голосов
/ 26 августа 2009

Это будет схема в SQL Server 2005, которую вы можете создать самостоятельно, используя CREATE SCHEMA.

Схема может использоваться для разделения объектов базы данных, которые логически связаны друг с другом, например, поместить все таблицы, относящиеся к человеческим ресурсам, в схему «HR» и т. д. Схемы БД немного похожи на пространства имен .NET или XML.

Схема также может использоваться для обработки разрешений, например, Вы можете делегировать разрешения пользователю и ролям на уровне схемы.

Взгляните на пример базы данных AdventureWorks, в которой широко используются схемы.

Это также одна из причин, по которой вы всегда должны квалифицировать свои объекты базы данных с помощью «dbo». префикс. Если вы этого не сделаете, механизм запросов SQL Server сначала должен проверить вашу схему по умолчанию (которая может отличаться от dbo) для объекта с таким именем, и если он не найден, он переходит к схеме dbo. Если вы всегда используете «dbo.YourTableName», механизм запросов заранее знает, где искать - крошечный выигрыш в производительности (который умножается на тысячи обращений).

6 голосов
/ 06 октября 2009

'lu' - сокращение от справочная таблица

2 голосов
/ 26 августа 2009

lu - отдельная схема (по умолчанию используется dbo)

Подробнее о схемах это выглядит полезным: Что хорошего в схемах SQL Server?

1 голос
/ 26 августа 2009

lu - имя схемы.

dbo обозначает владельца базы данных. Лу может быть учетной записью пользователя, созданной другими таблицами

1 голос
/ 26 августа 2009

SQL-сервер допускает несколько схем - dbo, по умолчанию - ваша база данных имеет вторичную (и, возможно, более) схему lu

...