0

使用 Microsoft SQL Server Management Studio,无论是执行 SQL 命令(例如CREATE DATABASE XYZ)还是通过 GUI 创建一个全新的数据库,数据库都会以一些默认用户(见下图)结束,例如dbo,当前域用户guest、、sys

这是 SQL Server 的默认行为吗?有没有办法控制这种行为?(例如,不包括当前域用户、正在使用带有 SSMS 的计算机;或者必须包括一些用户)

另一个奇怪的是在用户列表中,可以看到tester222我很久以前为测试而创建的用户列表,而对象资源管理器的“SQL Server Instance\Security\Logins”中不再存在这个名称。刚刚怎么会出现在名单上?

样本数据库

4

1 回答 1

0

感谢@Larnu。

基于模型数据库创建新数据库。请参见下面的示例:

SQL Server 2017 中的模型数据库

例如,如果更改此模型数据库中的默认用户列表,则每个新数据库在创建时都将继承该用户列表。

来自微软:

https://docs.microsoft.com/en-us/sql/relational-databases/databases/model-database?view=sql-server-2017

模型数据库用作在 SQL Server 实例上创建的所有数据库的模板。因为每次启动 SQL Server 时都会创建 tempdb,所以模型数据库必须始终存在于 SQL Server 系统上。模型数据库的全部内容,包括数据库选项,都被复制到新数据库中。model 的一些设置也用于在启动过程中创建新的 tempdb,因此 model 数据库必须始终存在于 SQL Server 系统上。

于 2018-11-23T09:58:47.300 回答