sql server包含

什么是SQL Server包含
SQL Server是微软公司开发的一种数据库管理系统。SQL Server包含(Containment)是在SQL Server 2012版本中引入的一个新功能,它使得数据库更加独立,更加容易移植。
SQL Server包含的优点
传统的SQL Server数据库管理方式依赖于Windows操作系统的安全控制,这就导致数据库的移植性比较差。而SQL Server包含的优点在于,它允许用户将数据库包裹在一个独立的环境中,使得数据库更加自包含化,安全性也更高。另外,SQL Server包含还提供了更高级的故障隔离控制,使得用户更加轻松地部署和维护数据库。
如何创建SQL Server包含的数据库
在SQL Server 2012版本中,用户可以通过两种方式来创建SQL Server包含的数据库。第一种方式是使用SQL Server Management Studio(SSMS),在创建新的数据库时,勾选“包含”选项即可。第二种方式是使用T-SQL语句来创建SQL Server包含的数据库,示例如下:
CREATE DATABASE [ContainedDB]CONTAINMENT = PARTIAL;
如何管理SQL Server包含的数据库中的用户
在SQL Server包含中,用户被分为两类:包含用户和非包含用户。非包含用户仍然依赖于Windows操作系统的安全控制,而包含用户则完全由数据库自己管理。在SQL Server包含的数据库中,可以通过以下两种方式来管理用户:
- 通过包含用户创建用户
- 将现有的非包含用户转换为包含用户
无论是哪一种管理方式,都需要注意的是,包含用户的密码必须是区分大小写的。
SQL Server包含的限制
SQL Server包含虽然有很多优点,但也存在一些限制。首先,不能将所有的数据库都转换为SQL Server包含的数据库。只有在部分模式下创建的数据库才能使用SQL Server包含功能。其次,虽然SQL Server包含使得数据库更加独立,让用户更加容易移植、部署和维护,但也会增加一些开销。例如,包含用户会增加一些存储开销;并且,在使用包含用户进行登录时,数据库服务器需要执行更多的安全检查。最后,由于包含用户的密码是区分大小写的,因此也会增加一些用户操作的难度。



