sp_create_removable (Transact-SQL)

创建可移动媒体数据库。创建三个或更多文件(一为系统目录表,一为事务日志,其余文件为数据表)并将数据库置于这些文件之中。

ms173585.note(zh-cn,SQL.90).gif重要提示:
后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 但我们建议您使用 CREATE DATABASE

主题链接图标Transact-SQL 语法约定

语法

sp_create_removable 
   [ @dbname = ] 'dbname', 
   [ @syslogical= ] 'syslogical', 
   [ @sysphysical = ] 'sysphysical', 
   [ @syssize = ] syssize, 
   [ @loglogical = ] 'loglogical', 
   [ @logphysical = ] 'logphysical', 
   [ @logsize = ] logsize, 
   [ @datalogical1 = ] 'datalogical1', 
   [ @dataphysical1 = ] 'dataphysical1', 
   [ @datasize1 = ] datasize1 , 
   [ @datalogical16 = ] 'datalogical16', 
   [ @dataphysical16 = ] 'dataphysical16', 
   [ @datasize16 = ] datasize16 ]

参数

[ @dbname= ] 'dbname'

为了在可移动媒体上使用而创建的数据库的名称。dbname 的数据类型为 sysname

[ @syslogical= ] 'syslogical'

包含系统目录表的文件的逻辑名称。syslogical 的数据类型为 sysname

[ @sysphysical= ] 'sysphysical'

物理名称。其中包含存放系统目录表的文件的完全限定路径。sysphysical 的数据类型为 nvarchar(260)

[ @syssize= ] syssize

存放系统目录表的文件的大小 (MB)。syssize 的数据类型为 intsyssize 的最小值为 1。

[ @loglogical= ] 'loglogical'

包含事务日志的文件的逻辑名称。loglogical 的数据类型为 sysname

[ @logphysical= ] 'logphysical'

物理名称。其中包含存放事务日志的文件的完全限定路径。logphysical 的数据类型为 nvarchar(260)

[ @logsize= ] logsize

包含事务日志的文件的大小 (MB)。logsize 的数据类型为 intlogsize 的最小值为 1。

[ @datalogical1= ] 'datalogical'

包含数据表的文件的逻辑名称。datalogical 的数据类型为 sysname

必须有 1 到 16 个数据文件。通常,如果预计数据库很大,必须分布在多个磁盘上,则创建多个数据文件。

[ @dataphysical1= ] 'dataphysical'

物理名称。其中包括包含数据表的文件的完全限定路径。dataphysical 的数据类型为 nvarchar(260)

[ @datasize1= ] 'datasize'

包含数据表的文件的大小 (MB)。datasize 的数据类型为 intdatasize 的最小值为 1。

返回代码值

0(成功)或 1(失败)

结果集

备注

如果要在可移动媒体(如光盘)上制作数据库的副本,并将该数据库分发给其他用户,则可使用此存储过程。

权限

要求具有 CREATE DATABASE、CREATE ANY DATABASE 或 ALTER ANY DATABASE 的权限。

为了控制对运行 SQL Server 实例的计算机上的磁盘的使用,创建数据库的权限通常限于少数登录帐户。

对数据文件和日志文件的权限

在 SQL Server 2005 中,将对每个数据库的数据文件和日志文件设置特定的权限。每当对数据库执行下列操作时,便会设置下列权限:

创建时间

修改以添加新文件

附加

备份

分离

还原

当文件位于具有开放权限的目录中时,上述权限可以防止文件被意外篡改。有关详细信息,请参阅保护数据和日志文件的安全

ms173585.note(zh-cn,SQL.90).gif注意:
Microsoft SQL Server 2005 Express Edition 不设置数据文件和日志文件权限。

示例

以下示例创建作为可移动数据库的数据库 inventory

EXEC sp_create_removable 'inventory', 
   'invsys',
   'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\invsys.mdf'
, 2, 
   'invlog',
   'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\invlog.ldf', 4,
   'invdata',
   'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\invdata.ndf', 
10

请参阅

参考

sp_certify_removable (Transact-SQL)
ALTER DATABASE (Transact-SQL)
sp_dbremove (Transact-SQL)
sp_detach_db (Transact-SQL)
sp_helpfile (Transact-SQL)
sp_helpfilegroup (Transact-SQL)
系统存储过程 (Transact-SQL)

其他资源

分离数据库和附加数据库

帮助和信息

获取 SQL Server 2005 帮助