首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更改SQL Azure登录名的默认数据库

更改SQL Azure登录名的默认数据库
EN

Stack Overflow用户
提问于 2012-01-14 08:32:42
回答 7查看 37.3K关注 0票数 40

我想要更改登录名的默认数据库,以支持可以访问SQL Azure但不允许轻松更改连接字符串的软件。看起来SQL Azure默认使用master数据库。

我已经考虑过了:

  • 存储过程。我找不到这样做的存储过程(据我所知,sp_defaultdb没有在SQL Azure中实现),
  • Alter Login。ALTER LOGIN不允许使用DEFAULT_DATABASE选项。
  • SSMS。SSMS似乎不允许用户通过SQL Azure的界面进行太多控制。

想法?

EN

回答 7

Stack Overflow用户

发布于 2012-01-14 09:52:54

连接字符串:

代码语言:javascript
复制
Server=tcp:[serverName].database.windows.net;Database=myDataBase;User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;Encrypt=True;

当您在连接字符串中写入' database‘属性时,您可以更改连接默认数据库。

SSMS正在连接到数据库框,该框是连接对话框中option->secont选项卡。

票数 11
EN

Stack Overflow用户

发布于 2012-01-17 10:35:20

正如您已经发现的,DEFAULT_DATABASE选项在SQL Azure中不可用。因此,如果您不能更改通常在其中指定数据库名称的应用程序的连接字符串,则只能使用master。

然而..。是否可以创建ODBC连接,并将您的应用程序配置为使用ODBC?使用ODBC将允许您指定默认数据库。

票数 9
EN

Stack Overflow用户

发布于 2018-06-13 00:20:09

在我的例子中,我是通过直接在master数据库中创建一个登录名来实现的:

代码语言:javascript
复制
CREATE LOGIN newlogin WITH password='password'
GO

CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO

然后,我在想要访问的数据库中创建了一个用户:

代码语言:javascript
复制
CREATE USER newlogin FOR LOGIN newlogin WITH DEFAULT_SCHEMA=[dbo]
GO

最后将其添加到特定数据库中的角色,以获得正确的权限:

代码语言:javascript
复制
Alter role db_owner add member newlogin

希望这对你也有效。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8859067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档