sp_defaultdb (Transact-SQL)

适用于:SQL Server

更改 Microsoft SQL Server 登录名的默认数据库。

重要

在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 请改用 ALTER LOGIN

Transact-SQL 语法约定

语法

  
sp_defaultdb [ @loginame = ] 'login', [ @defdb = ] 'database'   

参数

[ @loginame = ] 'login' 登录名。 loginsysname,没有默认值。 登录 可以是现有的 SQL Server 登录名或 Windows 用户或组。 如果 SQL Server 中不存在 Windows 用户或组的登录名,则会自动添加该登录名。

[ @defdb = ] 'database' 新默认数据库的名称。 数据库sysname,无默认值。 数据库 必须已存在。

返回代码值

0(成功)或 1(失败)

注解

sp_defaultdb调用 ALTER LOGIN。 此语句支持附加选项。 有关更改默认数据库的信息,请参阅 ALTER LOGIN (Transact-SQL)。

不能在用户定义的事务中执行sp_defaultdb

权限

需要 ALTER ANY LOGIN 权限。

示例

以下示例将 AdventureWorks2022 设置为 SQL Server 登录 Victoria的默认数据库。

EXEC sp_defaultdb 'Victoria', 'AdventureWorks2022';  

另请参阅

安全存储过程 (Transact-SQL)
ALTER LOGIN (Transact-SQL)
sp_addlogin (Transact-SQL)
sp_droplogin (Transact-SQL)
sp_grantdbaccess (Transact-SQL)
系统存储过程 (Transact-SQL)