2 Mar 2010

Using File Streams SQL Server 2008

Had a bit of trouble getting these up and running. A lot of the samples out there missed steps are did them in wrong order (hopefully below is full list of steps).

Enable the file stream on the server:
http://msdn.microsoft.com/en-us/library/cc645923.aspx
To enable and change FILESTREAM settings

  1. On the Start menu, point to All Programs, point to Microsoft SQL Server 2008, point to Configuration Tools, and then click SQL Server Configuration Manager.
  2. In the list of services, right-click SQL Server Services, and then click Open.
  3. In the SQL Server Configuration Manager snap-in, locate the instance of SQL Server on which you want to enable FILESTREAM.
  4. Right-click the instance, and then click Properties.
  5. In the SQL Server Properties dialog box, click the FILESTREAM tab.
  6. Select the Enable FILESTREAM for Transact-SQL access check box.
  7. If you want to read and write FILESTREAM data from Windows, click Enable FILESTREAM for file I/O streaming access. Enter the name of the Windows share in the Windows Share Name box.
  8. If remote clients must access the FILESTREAM data that is stored on this share, select Allow remote clients to have streaming access to FILESTREAM data.
  9. Click Apply.
  10. In SQL Server Management Studio, click New Query to display the Query Editor.
  11. In Query Editor, enter the following Transact-SQL code:
  12. EXEC sp_configure filestream_access_level, 2
    RECONFIGURE
Or use 1 for T-SQL access only


Enable Filestream in your database
ALTER DATABASE ArkleStream ADD FILEGROUP ArkleStream_Filegroup CONTAINS FILESTREAM

ALTER DATABASE ArkleStream ADD FILE  (
    NAME = ArkleStream_Filegroup
    ,FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\ArkleStream_Filegroup_Data'
    )
TO FILEGROUP ArkleStream_Filegroup

Create a table using a filesteam column
CREATE TABLE [dbo].[TestFileStreamTable](
    [SomeOtherColumn] [varchar](100) NULL,
    [FileStreamColumn] [varbinary](max) FILESTREAM  NULL,
    [UniqueID] [uniqueidentifier] ROWGUIDCOL  NOT NULL,
    [Test] [varbinary](max) NULL,
UNIQUE NONCLUSTERED
(
    [UniqueID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY] FILESTREAM_ON [ArkleStream_Filegroup]

No comments:

Post a Comment