C/Visual C - Boton de consulta de base de datos en visual c

 
Vista:

Boton de consulta de base de datos en visual c

Publicado por RaFaGuiTa (2 intervenciones) el 18/08/2001 06:50:22
QUisiera saber si alguien sabe como creo un boton que haga una consulta (query) en una base de datos en un programa en visual c
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cómo crear un botón que realice una consulta en una base de datos

Publicado por Alejandro (940 intervenciones) el 11/10/2024 19:36:53
RaFaGuiTa, para crear un botón en un programa de Visual C++ que realice una consulta a una base de datos, puedes seguir estos pasos utilizando MFC (Microsoft Foundation Classes) y ADO (ActiveX Data Objects). Aquí tienes un ejemplo básico:

1. Configura tu proyecto


Asegúrate de que tu proyecto esté configurado para usar MFC y ADO. Puedes hacerlo al crear un nuevo proyecto en Visual Studio y seleccionar la opción de MFC.

2. Agrega un botón al formulario


En el diseñador de tu formulario, arrastra un botón desde la caja de herramientas y colócalo en el formulario. Cambia su texto a "Consultar".

3. Maneja el evento de clic del botón


Haz doble clic en el botón para generar el manejador de eventos `OnBnClicked` correspondiente.

4. Código para realizar la consulta


Aquí tienes un ejemplo de cómo implementar la consulta en el manejador de eventos:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <afxdb.h> // Para ADO
#include <iostream>
 
void CYourDialog::OnBnClickedButtonConsultar() {
    // Inicializa ADO
    CoInitialize(NULL);
    _ConnectionPtr pConnection;
    _RecordsetPtr pRecordset;
 
    try {
        // Conectar a la base de datos
        pConnection.CreateInstance(__uuidof(Connection));
        pConnection->Open("Provider=SQLOLEDB;Data Source=tu_servidor;Initial Catalog=tu_base_de_datos;User ID=tu_usuario;Password=tu_contraseña;", "", "", adConnectUnspecified);
 
        // Realizar la consulta
        pRecordset.CreateInstance(__uuidof(Recordset));
        pRecordset->Open("SELECT * FROM tu_tabla", pConnection.GetInterfacePtr(), adOpenStatic, adLockReadOnly, adCmdText);
 
        // Procesar los resultados
        while (!pRecordset->adoEOF) {
            CString nombre = (LPCTSTR)pRecordset->Fields->Item["nombre"]->Value; // Cambia "nombre" por el campo que necesites
            AfxMessageBox(nombre); // Muestra el resultado
            pRecordset->MoveNext();
        }
 
        // Cerrar el recordset y la conexión
        pRecordset->Close();
        pConnection->Close();
    } catch (_com_error &e) {
        AfxMessageBox(e.ErrorMessage());
    }
 
    CoUninitialize();
}

Explicación:


1. Incluir bibliotecas: Asegúrate de incluir `<afxdb.h>` para trabajar con ADO.
2. Inicializar ADO: Usa `CoInitialize` y `CoUninitialize` para inicializar y limpiar ADO.
3. Conexión a la base de datos: Cambia la cadena de conexión con tus datos específicos (servidor, base de datos, usuario y contraseña).
4. Consulta: Realiza la consulta SQL y procesa los resultados. En este caso, se muestra un mensaje con el valor del campo "nombre".
5. Manejo de errores: Captura cualquier error que ocurra durante la conexión o la consulta.

Con este código, al hacer clic en el botón, se realizará la consulta a la base de datos y se mostrarán los resultados. Asegúrate de tener configurado el entorno para usar ADO y de que la base de datos esté accesible.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar