Bagikan melalui


sp_add_data_file_recover_suspect_db (T-SQL)

Berlaku untuk:SQL Server

Menambahkan file data ke grup file saat pemulihan tidak dapat diselesaikan pada database karena ruang yang tidak cukup pada grup file (kesalahan 1105). Setelah file ditambahkan, prosedur tersimpan ini menonaktifkan pengaturan tersangka dan menyelesaikan pemulihan database. Parameternya sama dengan untuk ALTER DATABASE <database_name> ADD FILE.

Konvensi sintaks transact-SQL

Sintaks

sp_add_data_file_recover_suspect_db [ @dbName = ] 'database'
    , [ @filegroup = ] N'filegroup_name'
    , [ @name = ] N'logical_file_name'
    , [ @filename = ] N'os_file_name'
    , [ @size = ] N'size'
    , [ @maxsize = ] N'max_size'
    , [ @filegrowth = ] N'growth_increment'
[ ; ]

Argumen

[ @dbName = ] 'database'

Nama database. @dbName adalah sysname, tanpa default.

[ @filegroup = ] N'filegroup_name'

Grup file tempat Anda menambahkan file. @filegroup adalah nvarchar(260), dengan default NULL, yang menunjukkan file utama.

[ @name = ] N'logical_file_name'

Nama yang digunakan di SQL Server untuk mereferensikan file. Nama harus unik di server. @name adalah nvarchar(260), tanpa default.

[ @filename = ] N'os_file_name'

Jalur dan nama file yang digunakan oleh sistem operasi untuk file. File harus berada di instans Mesin Database. @filename adalah nvarchar(260), tanpa default.

[ @size = ] N'size'

Ukuran awal file. @size adalah nvarchar(20), dengan default NULL. Tentukan bilangan bujur; jangan sertakan desimal. Akhiran MB dan KB dapat digunakan untuk menentukan megabyte atau kilobyte. Default adalah MB. Nilai minimumnya adalah 512 KB. Jika @size tidak ditentukan, defaultnya adalah 1 MB.

[ @maxsize = ] N'max_size'

Ukuran maksimum tempat file dapat tumbuh. @maxsize adalah nvarchar(20), dengan default NULL. Tentukan bilangan bujur; jangan sertakan desimal. Akhiran MB dan KB dapat digunakan untuk menentukan megabyte atau kilobyte. Default adalah MB.

Jika @maxsize tidak ditentukan, file akan bertambah hingga disk penuh. Log aplikasi Microsoft Windows memperingatkan administrator ketika disk akan menjadi penuh.

[ @filegrowth = ] N'growth_increment'

Jumlah ruang yang ditambahkan ke file setiap kali ruang baru diperlukan. @filegrowth adalah nvarchar(20), dengan default NULL. Nilai 0 menunjukkan tidak ada pertumbuhan. Tentukan bilangan bujur; jangan sertakan desimal. Nilai dapat ditentukan dalam MB, , KBatau persen (%). Ketika % ditentukan, kenaikan pertumbuhan adalah persentase yang ditentukan dari ukuran file pada saat kenaikan terjadi. Jika angka ditentukan tanpa akhiran MB, , KBatau % , defaultnya adalah MB.

Jika @filegrowth NULL, nilai defaultnya adalah 10%, dan nilai minimumnya adalah 64 KB. Ukuran yang ditentukan dibulatkan ke 64 KB terdekat.

Mengembalikan nilai kode

0 (berhasil) atau 1 (kegagalan).

Tataan hasil

Tidak ada.

Izin

Jalankan izin default untuk anggota peran server tetap sysadmin . Izin ini tidak dapat ditransfer.

Contoh

Dalam contoh berikut, database db1 ditandai sebagai tersangka selama pemulihan karena ruang yang tidak mencukup (kesalahan 1105) dalam grup fg1file .

USE master;
GO

EXEC sp_add_data_file_recover_suspect_db db1,
    fg1,
    file2,
    'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\db1_file2.mdf',
    '1 MB';