【SQL Server】设置默认数据库

文章目录

    • 语法
    • 示例
    • 参数
    • 返回代码值
    • 注释
    • 权限

同志们每次打开Microsoft SQL Server Management Studio 默认使用的数据库总不是我们最常使用的库,每次都要手动去修改一次才能开始开发,久了就容易不耐烦,下面就教大家设置自己想要的库。

语法

sp_defaultdb [ @loginame = ] 'login' ,
    [ @defdb = ] 'database'
EXEC sp_defaultdb @loginame='YQ19882',@defdb='UMS_Demo'

示例

EXEC sp_defaultdb @loginame='YQ19882',@defdb='UMS_Demo'

参数

[@loginame =] ‘login’

是登录名。login 的数据类型为 sysname,没有 默认值。login 可以是现有 Microsoft® SQL Server™ 登录或者是 Microsoft Windows NT® 用户或组。如果 SQL Server 上没有 Windows NT 用户或组,系统会自动添加。

[@defdb =] ‘database’

新的默认数据库的名称。database 的数据类型为sysname, 没有默认值。database 必须已经存在。

返回代码值

0(成功)或 1(失败)

注释

当客户端连接 SQL Server 时,如果没有显式使用 USE 语句,则为其登录定义的默认数据库将成为当前数据库。可以在 sp_addlogin 添加登录时定义默认数据库。当执行 sp_addlogin 时,如果没有指定数据库,则 master 数据库将成为默认数据库。

执行 sp_defaultdb 后,当用户下次登录时登录将连接到新数据库。但 sp_defaultdb 不能自动将数据库访问权授予登录。数据库所有者 (dbo) 必须通过 sp_grantdbaccess 将数据库访问权授予登录,或者该登录必须是一个在数据库中指定的 guest 用户。

推荐使用 sp_defaultdb 更改所有登录(而不是 sysadmin 固 定数据库角色成员)的默认数据库。这将防止用户不经意间使用或创建 master 数据库中的对象。

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

权限

执行权限默认授予 public 角色,以便用户更改他们自己登录的默认数据库。只有 syadmin 或 securityadmin 固定服务器角色的成员可以为其它登录执行 sp_default

你可能感兴趣的:(#,数据库,数据库,sqlserver,microsoft)