如何在不使用MS SQL Server Management Studio的情况下更改SQL Server中的默认数据库?
我从SQL Server中删除了一个数据库,但事实certificate, 我的login被设置为使用删除的数据库作为其默认值。 我可以使用连接对话框中的“选项”button连接到SQL Server Management Studio,并select“master”作为要连接的数据库。 但是,每当我尝试在对象资源pipe理器中做任何事情,它都会尝试使用我的默认数据库进行连接并失败。
有谁知道如何设置我的默认数据库, 而不使用对象浏览器 ?
您可以使用sp_defaultdb系统存储过程设置您的默认数据库。 按照您所做的login,然后单击新build查询button。 之后,只需运行sp_defaultdb命令,如下所示:
Exec sp_defaultdb @loginame='login', @defdb='master'
要做到这一点的GUI方式,你需要去编辑你的login。 其中一个属性是用于该login的默认数据库。 您可以在安全节点下的login节点下findlogin列表。 然后select您的login,然后右键单击并select属性。 更改默认的数据库,你的生活会更好!
请注意,具有sysadmin privs的用户需要能够login才能执行此操作,或者从以前的post运行查询。
感谢这篇文章 ,我发现了一个更简单的答案:
-
打开Sql Serverpipe理工作室
-
转到对象资源pipe理器 – >安全 – >login
-
右键单击login并select属性
-
并在属性窗口中更改默认数据库,然后单击确定。
如果您没有更改默认数据库的权限,则可以在查询顶部手动select不同的数据库…
USE [SomeOtherDb] SELECT 'I am now using a different DB'
将工作,只要你有权限的其他数据库
- 点击更改连接图标
- 点击选项<<
- 从连接到数据库下拉列表中select数据库
如果您无法login到SQL Server:
sqlcmd –E -S InstanceName –d master
参考: https : //support.microsoft.com/en-us/kb/307864
如果您使用Windows身份validation,并且您不知道用户名和密码作为用户login的密码,则可以这样做:在SSMS的login屏幕上单击右下angular的选项,然后转到连接属性选项卡。 然后,您可以手动input您可以访问的另一个数据库的名称,在其所在的位置,可以让您连接。 然后按照其他build议更改您的默认数据库