我想要更改登录名的默认数据库,以支持可以访问SQL Azure但不允许轻松更改连接字符串的软件。看起来SQL Azure默认使用master
数据库。
我已经考虑过了:
sp_defaultdb
没有在SQL Azure中实现),ALTER LOGIN
不允许使用DEFAULT_DATABASE
选项。想法?
发布于 2012-01-14 09:52:54
连接字符串:
Server=tcp:[serverName].database.windows.net;Database=myDataBase;User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;Encrypt=True;
当您在连接字符串中写入' database‘属性时,您可以更改连接默认数据库。
SSMS正在连接到数据库框,该框是连接对话框中option->secont选项卡。
发布于 2012-01-17 10:35:20
正如您已经发现的,DEFAULT_DATABASE选项在SQL Azure中不可用。因此,如果您不能更改通常在其中指定数据库名称的应用程序的连接字符串,则只能使用master。
然而..。是否可以创建ODBC连接,并将您的应用程序配置为使用ODBC?使用ODBC将允许您指定默认数据库。
发布于 2018-06-13 00:20:09
在我的例子中,我是通过直接在master数据库中创建一个登录名来实现的:
CREATE LOGIN newlogin WITH password='password'
GO
CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO
然后,我在想要访问的数据库中创建了一个用户:
CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO
最后将其添加到特定数据库中的角色,以获得正确的权限:
Alter role db_owner add member newlogin
希望这对你也有效。
https://stackoverflow.com/questions/8859067
复制相似问题