Como faço para configurar o banco de dados padrão no SQL Server a partir do código?
-
01-07-2019 - |
Pergunta
Eu não consigo descobrir como definir o banco de dados padrão no SQL Server a partir do código. Isso pode ser código .Net ou T-SQL (T-SQL seria bom, já que seria fácil de usar em qualquer idioma). Eu procurei no Google e só conseguia encontrar a forma de fazê-lo no SQL Server Management Studio.
Solução
De: http://doc.ddart.net/mssql/sql70/ sp_da-di_6.htm
sp_defaultdb [@loginame =] 'login' , [@defdb =] 'database'
Outras dicas
ALTER LOGIN
deve ser usado para o SQL Server 2005 ou posterior:
http://technet.microsoft.com/en-us/library/ ms189828.aspx
ALTER LOGIN <login_name> WITH DEFAULT_DATABASE = <default_database>
sp_defaultdb
, eventualmente, serão removidos do SQL Server:
Graças Stephen.
Como uma nota, se você estiver usando autenticação do Windows, o @loginname
é YourDomain\YourLogin
(provavelmente óbvio para todo mundo, mas me levou um par de tentativas.
sp_defaultdb @loginame='YourDomain\YourLogin', @defdb='YourDatabase'
Se você está tentando mudar qual banco de dados você está usando depois que você está logado, você pode usar o comando USE. Por exemplo. USE Adamastor.