如何在不使用MS SQL Server Management Studio的情况下更改SQL Server中的默认数据库?

hjqgdpho  于 2022-09-18  发布在  Java
关注(0)|答案(13)|浏览(244)

我从SQL Server删除了一个数据库,但结果是我的登录名被设置为使用删除的数据库作为其默认数据库。我可以通过使用连接对话框中的‘Options’按钮并选择‘master’作为要连接的数据库来连接到SQL Server Management Studio。然而,每当我尝试在对象资源管理器中执行任何操作时,它都会尝试使用我的默认数据库进行连接,但失败了。

有人知道如何设置我的默认数据库而不使用对象资源管理器吗?

a2mppw5e

a2mppw5e1#

您可以做的是使用sp_defaultdb系统存储过程设置默认数据库。按照您所做的那样登录,然后单击New Query按钮。之后,只需按如下方式运行sp_defaultdb命令:

Exec sp_defaultdb @loginame='login', @defdb='master'
eivgtgni

eivgtgni2#

Sp_defaultdb(will be removed in a future version of Microsoft SQL Server)的替代方案可以是ALTER LOGIN

ALTER LOGIN [my_user_name] WITH DEFAULT_DATABASE = [new_default_database]

注意:用户名和数据库名不带引号(与sp_defaultdb解决方案不同)。如果名称包含特殊字符,则需要使用方括号(最常见的示例是域用户,它是domain\username,没有方括号将不起作用):

ALTER LOGIN me WITH DEFAULT_DATABASE = my_database

ALTER LOGIN [EVILCORPj.smith28] WITH DEFAULT_DATABASE = [prodv-45]
w8biq8rn

w8biq8rn3#

要使用图形用户界面的方式,您需要编辑您的登录名。它的属性之一是用于该登录的默认数据库。您可以在安全节点下的登录节点下找到登录列表。然后选择您的登录,右击并选择Properties。更改默认数据库,您的生活会更美好!

请注意,拥有sysadmin权限的用户需要能够登录才能执行此操作或运行上一篇文章中的查询。

50pmv0ei

50pmv0ei4#

多亏了this post,我找到了一个更简单的答案:

1.打开SQL Server Management Studio
1.转到对象资源管理器->安全->登录
1.右键单击登录并选择属性
1.在“属性”窗口中更改默认数据库,然后单击“确定”。

wrrgggsh

wrrgggsh5#

如果您没有权限更改默认数据库,您可以在查询的顶部手动选择不同的数据库...

USE [SomeOtherDb]
SELECT 'I am now using a different DB'

只要您有其他数据库的权限,就可以工作

avkwfej4

avkwfej46#

1.点击更改连接图标
1.单击选项<<
1.从连接到数据库下拉菜单中选择数据库

zf9nrax1

zf9nrax17#

单击连接到服务器对话框上的选项和连接属性,您可以选择启动时要连接到的数据库。最好将其保留为默认设置,这将使MASTER成为默认设置。否则,您可能会在连接到数据库后无意中在错误的数据库上运行SQL。

omhiaaxx

omhiaaxx8#

我也更喜欢ALTER LOGIN命令,如接受答案和here中所述

但对于图形用户界面爱好者来说

1.进入[服务器示例]-->安全-->登录-->[您的登录]
1.右击[您的登录]
1.更新页面底部的默认数据库选项

厌倦了阅读!只需看看下面的

btxsgosb

btxsgosb9#

如果无法登录到SQL Server,请执行以下操作:

sqlcmd –E -S InstanceName –d master

参考文献:https://support.microsoft.com/en-us/kb/307864

l3zydbqr

l3zydbqr10#

这可能回答了这个问题,也可能不完全回答了这个问题,但是当我更改我的帐户以创建一个新的数据库作为我的“默认数据库”时,我遇到了这个问题(和问题)。然后,我删除了该数据库,并想从头开始测试我的创建脚本。我注销了SSMS并打算重新登录,但被拒绝了--错误是无法登录到默认数据库。哦!

我所做的是,在SSMS的登录对话框上,转到选项、连接属性,然后在“连接到数据库”组合框中键入master。单击连接。把我弄进去了。从那里,您可以运行该命令以:

ALTER LOGIN [DOMAINuseracct] WITH DEFAULT_DATABASE=[master]
GO
wlsrxk51

wlsrxk5111#

有一个用于更改连接的小图标,单击该图标,然后转到选项并从连接到数据库下拉菜单中选择数据库

oxcyiej7

oxcyiej712#

使用下面的MSSQL查询,您可以在sqlcmd上更改数据库

USE testdb
GO

然后,您可以查看当前使用的数据库

SELECT DB_NAME()
GO

测试数据库

然后,您可以显示所有已存在的数据库

SELECT name FROM master.sys.databases
GO

师傅
临时数据库
型号
消息数据库
测试数据库

另外,如果您没有在sqlcmd上指定数据库,则默认使用master数据库

ogq8wdun

ogq8wdun13#

如果您使用的是Windows身份验证,并且您不知道通过用户名和密码以用户身份登录的密码,您可以这样做:在SSMS的登录屏幕上,单击右下角的选项,然后转到连接属性标签。然后,你可以手动输入你有权访问的另一个数据库的名称,在它显示的位置上,这将允许你连接。然后按照其他建议更改您的默认数据库

https://gyazo.com/c3d04c600311c08cb685bb668b569a67

相关问题