В настоящее время я занимаюсь некоторым обслуживанием приложения и столкнулся с большой проблемой, связанной с квалифицированным именем в tsql. Интересно, может ли кто-нибудь очистить меня от путаницы?
Насколько я понимаю, вы хотите использовать USE [DatabaseName]
, чтобы объявить, какую базу данных вы используете. Я замечаю, что если вы переименуете базу данных, она автоматически обновит эти ссылки в вашем коде.
Однако разработчик, который первоначально написал этот код, использовал USE [DatabaseName]
. Затем в последующих высказываниях он написал: SELECT * FROM [DatabaseName].[dbo].[Table]
. Ну, это очевидно сломается, если я изменю имя базы данных. Из того, что я прочитал, вы хотите присвоить имена только владельцу, например: [dbo].[TableName]
, чтобы он знал, где искать, что повышает производительность.
Есть ли причина, по которой он включал имя базы данных в каждое утверждение?