/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Programar libreria para mysql

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
darkdragon



Registrado: 31 Ago 2006
Mensajes: 19
Ubicación: Tucuman

MensajePublicado: 13/10/2007 7:56 pm
Título: Programar libreria para mysql

Mi consulta es la siguiente:
Quiero realizar una libreria que ejecute comandos en mysql para facilitar la sintaxis, por ejemplo si yo quiero inicializar mysql pongo
MYSQL *datos
datos = mysql_init(0)
quiero que se ejecute con esta sintaxis
iniciar_mysql(datos)

Bueno mi problema es que comence a hacer la libreria con algunas funciones para probar y cuando compilo me sale este error:
18 C:\Dev-Cpp\include\eze_mysql.h new types may not be defined in a return type
y no tengo ni idea de como solucionarlo me figura en el void iniciar

El codigo fuente de la libreria es este:
#include <mysql/mysql.h>
#include <mysql/mysqld_error.h>
#include <iostream>
class sql{
MYSQL *bd;
MYSQL_RES *res;
MYSQL_ROW *registro;
MYSQL_FIELD *columna;}

void iniciar(MYSQL *bd){
bd = mysql_init(0);

}

void conectar_mysql(MYSQL *bd, const char *usuario,const char *clave,const char *base_datos){
if(!mysql_real_connect(bd,"localhost",usuario,clave,base_datos,MYSQL_PORT,NULL,0)){

mysql_close(bd);
}

void cerrar_mysql(MYSQL *bd) {
mysql_close (bd);

}

void seleccionar_bd(MYSQL *bd, const char a){
if(mysql_select_db(base, a){
cout<<"Error: la base de datos no existe"<<endl;
return 2;}}

void ejecutar_mysql(mysql *bd, const char a){
if(mysql_query(bd,a){
cout<<"Error de comando";
return 2;}}

Y del programa para probarlo es este:
#include <iostream>
#include <windows.h>

#include <cstring>
#include <cstdio>
#include <eze_mysql.h>

using namespace std;

// Programa principal
int main()
{
MYSQL *mydata;
MYSQL_RES *res;
MYSQL_ROW row;
MYSQL_FIELD *columna;
sql base

int i,j,k,l;

//iniciar(base.bd);
bd = mysql_init(0)
//conectar_mysql(base.bd,"root","123456","prueba");
if(!mysql_real_connect(bd,"localhost","root","123456","prueba",MYSQL_PORT,NULL,0)){
cout<<"Error Usuario o clave incorrecta";
mysql_close(bd);

seleccionar_bd(base.bd,"prueba" );
if(mysql_query(mydata,"select * from gente")){
cout<<"error";
system ("pause");
return 2;}
if((base.res = mysql_store_result(base.bd))){
i = mysql_num_rows(base.res);
j = mysql_num_fields(base.res);
mysql_data_seek(base.res,1);
base.row = mysql_fetch_row(base.res);
for(k = 0; k<j;k++){
cout<<((base.row[k]=="NULL")?"NULL":base.row[k])<<endl;}}
system ("pause");
return 0;}
Nota: solamente use dos funciones para probar init_mysql() y mysql_real_connect() lo demas lo programe directamente
Uso como compilador el dev-cpp

Gracias por tu ayuda
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com