Floating down the FILESTREAM...again

In my previous post I talked about the basic idea of what FILESTREAM is.  The sales pitch if you will.  In this post I thought I would talk about how to actually implement FILESTREAM?.  It's actually really easy.
 
FILESTREAM's live in a filegroup.  Semantically, anyway.  You will define what folder the data sits in.
ALTER DATABASE Production ADD FILEGROUP
FileStreamGroup1 CONTAINS FILESTREAM; GO
Simple enough.  Next you add a file to the filegroup.
ALTER DATABASE Production ADD FILE (
NAME = FSGroup1File, FILENAME = 'F:\Production\FSDATA') TO FILEGROUP
FileStreamGroup1; GO
Again, pretty simple.  You'll notice the F:\Production\FSDATA.  That’s where the files are stored.  Now, lets create a table that holds the FILESTREAM.
CREATE TABLE DocumentStore
( DocumentID INT IDENTITY PRIMARY KEY,
Document VARBINARY (MAX) FILESTREAM NULL,
DocGUID UNIQUEIDENTIFIER NOT NULL ROWGUIDCOL UNIQUE DEFAULT NEWID
()) FILESTREAM_ON FileStreamGroup1; GO
And that's it.  To insert data into the table, do it like you would any VARBINARY data.