次の方法で共有


sp_create_removable (Transact-SQL)

リムーバブル メディア データベースを作成します。 3 つ以上のファイル (システム カタログ テーブルとトランザクション ログに 1 つずつ、データ テーブルに 1 つ以上) を作成し、それらのファイルにデータベースを格納します。

重要な注意事項重要

この機能は、将来のバージョンの 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 のデータ型は int です。 最小 syssize は 1 です。

  • [ @loglogical= ] 'loglogical'
    トランザクション ログを格納するファイルの論理名を指定します。 loglogical のデータ型は sysname です。

  • [ @logphysical= ] 'logphysical'
    物理名です。 トランザクション ログを格納するファイルの名前をフル パスと共に指定します。 logphysical のデータ型は nvarchar(260) です。

  • [ @logsize= ] logsize
    トランザクション ログを格納するファイルのサイズ (MB) を指定します。 logsize のデータ型は int です。 最小 logsize は 1 です。

  • [ @datalogical1= ] 'datalogical'
    データ テーブルを格納するファイルの論理名を指定します。 datalogical のデータ型は sysname です。

    データ ファイルの数は 1 ~ 16 です。 データベースが大きくなり複数のディスクに分散する必要が生じた場合に備えて、通常、複数のデータ ファイルを作成します。

  • [ @dataphysical1= ] 'dataphysical'
    物理名です。 データ テーブルを格納するファイルの名前をフル パスと共に指定します。 dataphysical のデータ型は nvarchar(260) です。

  • [ @datasize1= ] 'datasize'
    データ テーブルを格納するファイルのサイズ (MB) を指定します。 datasize のデータ型は int です。 最小 datasize は 1 です。

リターン コード値

0 (成功) または 1 (失敗)

結果セット

なし

説明

データベースのコピーをコンパクト ディスクなどのリムーバブル メディアに作成し、他のユーザーにデータベースを配布する場合は、このストアド プロシージャを使用します。

権限

CREATE DATABASE、CREATE ANY DATABASE、または ALTER ANY DATABASE の各権限が必要です。

SQL Server のインスタンス上のディスク使用量を管理するため、通常、データベースを作成する権限をいくつかのログイン アカウントに制限します。

データおよびログ ファイルに対する権限

SQL Server 2005 以降では、特定の操作がデータベースに対して実行されるかどうかにかかわらず、そのデータおよびログ ファイルに対して必要な権限が設定されます。 この権限は、開く権限のあるディレクトリにファイルが存在する場合に、そのファイルが誤って書き換えられるのを防ぎます。

データベースに対する操作

ファイルに対して設定される権限

変更して新しいファイルを追加

作成

バックアップ

アタッチ

復元

デタッチ

注意

SQL Server 2005 Express Edition では、データおよびログ ファイルに対する権限は設定されません。

使用例

次の例では、inventory というリムーバブルなデータベースを作成します。

EXEC sp_create_removable 'inventory', 
   'invsys',
   'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2, 
   'invlog',
   'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
   'invdata',
   'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\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)