ADO-based Reading from Database:                                                   Code  Script
#include <comdef.h> /* any time when using COM */
#include <stdio.h>  /* for printf              */

#import "c:\program files\common files\system\ado\msado15.dll" \
                                                 no_namespace  \
                                         rename("EOF", "adoEOF") 

void ShowRecords(_ConnectionPtr pConnection);

void main()
{
    CoInitialize(NULL);

    _ConnectionPtr pConnection = NULL;
 
   _bstr_t bstrConnection("driver={SQL Server};server=netston;database=netston;");
     
    pConnection.CreateInstance(__uuidof(Connection));
    pConnection->ConnectionString  = bstrConnection;

    pConnection->Open("","","",NULL);

    ShowRecords( pConnection );

    CoUninitialize();
}

void ShowRecords(_ConnectionPtr pConnection)
{
    _RecordsetPtr  pRecordset = NULL;

    _bstr_t bstrDate;
    _bstr_t bstrSymbol;
    _bstr_t bstrClose;
    _bstr_t bstrVolume;

    pRecordset = pConnection->Execute("SELECT * FROM LocalNASDAQ", NULL, adCmdText);

    pRecordset->MoveFirst();

    printf( "          NASDAQ Data           \n\n");
    printf( "/****************************** \n"  );
    printf( "   Date  Symbol Close  Volume   \n"  );
    printf( "/****************************** \n\n");

    while(!pRecordset->adoEOF)
    {
        bstrDate   = pRecordset->Fields->GetItem("Date")  ->Value;
	bstrSymbol = pRecordset->Fields->GetItem("Symbol")->Value;
	bstrClose  = pRecordset->Fields->GetItem("Close") ->Value;
	bstrVolume = pRecordset->Fields->GetItem("Volume")->Value;

	printf( "%s, %s, %s, %s \n", (LPCSTR) bstrDate,
                                     (LPCSTR) bstrSymbol,
		                     (LPCSTR) bstrClose,
		                     (LPCSTR) bstrVolume );
    
	pRecordset->MoveNext();
    }

    pRecordset->Close();
    pConnection->Close();
    pRecordset  = NULL;
    pConnection = NULL;
}

Console Output:


        NASDAQ Data  

/******************************
  Date  Symbol Close  Volume           
******************************/

05/31/01 MSFT  69.18  35340000
05/31/01 INTL  12.51  69700000
05/31/01 CSCO  19.26  57090000
(c) 2001, Stan Malevanny