#include <afxdb.h> // Necesario para CDatabase y CRecordset
void ConnectToDatabase()
{
// Crear un objeto de la clase CDatabase
CDatabase database;
// Cadena de conexión ODBC
CString connectionString = _T("ODBC;DSN=TuDSN;UID=tu_usuario;PWD=tu_contraseña;");
// Intentar abrir la conexión
try
{
database.OpenEx(connectionString, CDatabase::openQuery);
AfxMessageBox(_T("Conexión exitosa a la base de datos!"));
// Crear un objeto CRecordset para realizar consultas
CRecordset recordset(&database);
recordset.Open(CRecordset::forwardOnly, _T("SELECT * FROM TuTabla"));
// Leer los registros
while (!recordset.IsEOF())
{
CString campo1, campo2;
recordset.GetFieldValue(_T("Campo1"), campo1);
recordset.GetFieldValue(_T("Campo2"), campo2);
// Procesar los datos como sea necesario
recordset.MoveNext();
}
// Cerrar el recordset
recordset.Close();
}
catch (CDBException* e)
{
AfxMessageBox(e->m_strError);
e->Delete();
}
// Cerrar la conexión a la base de datos
database.Close();
}