Creazione di un database abilitato per FILESTREAM

Si applica a: SQL Server

In questo argomento viene illustrato come creare un database che supporti FILESTREAM. Poiché in FILESTREAM viene utilizzato un tipo speciale di filegroup, quando si crea il database è necessario specificare la clausola CONTAINS FILESTREAM per almeno un filegroup.

Un filegroup FILESTREAM può contenere più di un file. Per un esempio di codice che illustra come creare un filegroup FILESTREAM contenente più file, vedere CREATE DATABASE (SQL Server Transact-SQL).

Per creare un database abilitato per FILESTREAM

  1. Fare clic su Nuova query in SQL Server Management Studio per visualizzare l'editor di query.

  2. Copiare il codice Transact-SQL dall'esempio seguente e incollarlo nell'editor di query. Tramite il codice Transact-SQL viene creato un database abilitato per FILESTREAM denominato Archive.

    Nota

    Per eseguire questo script, è necessario che la directory C:\Data esista.

  3. Per compilare il database, fare clic su Esegui.

Esempio

Nel codice di esempio seguente viene creato un database denominato Archive. Il database contiene tre filegroup: PRIMARY, Arch1 e FileStreamGroup1. PRIMARY e Arch1 sono filegroup normali che non possono contenere dati FILESTREAM. FileStreamGroup1 è il filegroup FILESTREAM.

CREATE DATABASE Archive 
ON
PRIMARY ( NAME = Arch1,
    FILENAME = 'C:\data\archdat1.mdf'),
FILEGROUP FileStreamGroup1 CONTAINS FILESTREAM ( NAME = Arch3,
    FILENAME = 'C:\data\filestream1')
LOG ON  ( NAME = Archlog1,
    FILENAME = 'C:\data\archlog1.ldf')
GO

Per un filegroup FILESTREAM , FILENAME fa riferimento a un percorso. È necessario che il percorso fino all'ultima cartella esista già, mentre l'ultima cartella non deve essere presente. In questo esempio è necessario che c:\data esista. La sottocartella filestream1 tuttavia non può esistere quando si esegue l'istruzione CREATE DATABASE. Per altre informazioni sulla sintassi, vedere CREATE DATABASE (SQL Server Transact-SQL).

Dopo avere eseguito l'esempio precedente, nella cartella c:\Data\filestream1 sono presenti il file filestream.hdr e la cartella $FSLOG. Il file filestream.hdr è un file di intestazione per il contenitore FILESTREAM.

Importante

Il file filestream.hdr è un importante file di sistema. Tale file contiene informazioni di intestazione di FILESTREAM. Non rimuoverlo o modificarlo.

Per database esistenti, è possibile utilizzare l'istruzione ALTER DATABASE per aggiungere un filegroup FILESTREAM.

Vedi anche

CREATE DATABASE (SQL Server Transact-SQL)
ALTER DATABASE (Transact-SQL)