Readme_Sending Data to a FILESTREAM Column Using ISequentialStream Bound to ICommandText Parameter (OLE DB)

11/05/2008 21:36:06

This sample works only with SQL Server 2008. It will not work with any version of SQL Server earlier than SQL Server 2008.
This sample uses an ISequentialStream interface bound to an ICommandText parameter to send between 4MB and 4GB of data to a filestream column.
SQL Server samples and sample databases must be downloaded and installed before you can view or work with them. For more information, see Considerations for Installing SQL Server Samples and Sample Databases.


For more information on the Filestream feature, see FILESTREAM Support (OLE DB) in Books Online.


This sample uses Visual C++.


Before running this sample, make sure the following software is installed:
  • SQL Server or SQL Server Express including Database Engine. You can download SQL Server Express from the Microsoft Download Center.
  • The AdventureWorks database that is available at the Microsoft SQL Server Developer Center.
  • The SQL Server Database Engine samples that are available at the Microsoft SQL Server Developer Center.
  • .NET Framework SDK 2.0 (or later) or Microsoft Visual Studio 2005 (or later). You can obtain .NET Framework SDK free of charge. See Installing the .NET Framework Documentation.
  • Ensure that FILESTREAM support is enabled. In the SQL Server Configuration Manager, right-click on the name of your SQL Server instance. On the FILESTREAM tab, enable the options.

Building the Sample

  • Make sure your INCLUDE environment variable includes the directory that contains sqlncli.h.
  • If you are using Visual Studio, load the ICommandUpload.sln file and build it.
If you are using MSBuild.exe, invoke MSBuild.exe at a command prompt, passing it the ICommandUpload.sln file: * MSBuild ICommandUpload.sln *

Running the Sample

When you run this sample, you must pass the name of a server, or a server\instance_name, well as a value between 4 MB (0x400001) and 4 GB (0xFFFFFFFF) indicating the amount of data to write.
The server must have a directory called C:\DBFsa; this is where the sample will create the database.
From Visual Studio, invoke Start Without Debugging (CTRL+F5).
If you built with MSBuild.exe, invoke ICommandUpload.exe.

Deleting the Sample Database

To delete the databases in c:\DBFsa, you have to detach the database in SQL Server Management Studio, as follows:

sp_detach_db 'DBFsa'
IF EXISTS (SELECT name FROM master..sysdatabases WHERE name = 'DBFsa') DROP DATABASE [DBFsa] |

See Also

Data Access Samples
Help and Information
  • Getting SQL Server 2008 Assistance* © 2008 Microsoft Corporation. All rights reserved.

Last edited Nov 6, 2008 at 9:53 PM by bonniefe, version 4


No comments yet.