Updated: 17 July 2006

This sample shows how to use the IRow interface to allow direct access to columns of a single row in the result set. This sample is not supported on IA64.

Scenario

For more information on this sample, see Fetching Columns Using IRow::GetColumns (OLE DB) in Books Online.

Languages

This sample uses Transact-SQL and Visual C++.

Prerequisites

Before running this sample, make sure the following software is installed:

  • SQL Server 2005 or SQL Server 2005 Express Edition (SQL Server Express) including Database Engine.

    You can download SQL Server Express from the Microsoft Download Center.

  • The AdventureWorks database which is included with SQL Server 2005, and is also available at the Microsoft SQL Server Developer Center.

  • The SQL Server 2005 Database Engine samples. These samples are included with SQL Server 2005. You can download the latest version of the samples at the Microsoft SQL Server Developer Center.

  • .NET Framework SDK 2.0 or Microsoft Visual Studio 2005. You can obtain .NET Framework SDK free of charge. See Installing the .NET Framework SDK.

Building the Sample

  • This sample connects to your computer's default SQL Server instance. By default, SQL Server Express installs to a named instance. To connect to a named instance, change the connection string from L"(local)" to L"(local)\name", where name is the named instance.

  • The sample requires you to execute the following Transact-SQL statements, which you can find in the sample's scripts directory:

    USE AdventureWorks
    GO
    
    IF EXISTS (SELECT name FROM sysobjects WHERE name = 'MyTable')
         DROP TABLE MyTable
    GO
    
    CREATE TABLE MyTable
    (
         col1  int,
         col2  varchar(50),
         col3  char(50),
         col4  datetime,
         col5  float,
         col6  money,
         col7  sql_variant,
         col8  binary(50),
         col9  text,
         col10 image
    )
    GO
    INSERT INTO MyTable
    values
    (
         10,
         'abcdefghijklmnopqrstuvwxyz',
         'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
         '11/1/1999 11:52 AM',
         3.14,
         99.95,
         CONVERT(nchar(50), N'AbCdEfGhIjKlMnOpQrStUvWxYz'),
         0x123456789,
         REPLICATE('AAAAABBBBB', 500),
         REPLICATE(0x123456789, 500)
    )
    GO
    In SQL Server Management Studio, load and execute the Scripts\setup.sql script or execute the following command in a Command Prompt window:

    sqlcmd -E -I -i Scripts\setup.sql
  • If you are using Visual Studio, load the FetchColumns_B.sln file and build it.

  • If you are using MSBuild.exe, invoke MSBuild.exe at a command prompt, passing it the FetchColumns_B.sln file:

    MSBuild FetchColumns_B.sln

Running the Sample

  • From Visual Studio, invoke Start Without Debugging (CTRL+F5).

  • If you built with MSBuild.exe, invoke FetchColumns_B.exe.

Change History

Release History

17 July 2006

Changed content:
  • Clarified and updated prerequisites including the Web site for downloading the samples.

New content:
  • Added information on connecting to a named instance.