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