La empresa Agustin Company facilito por medio de su blog un codigo para esta conexion:
#include cstring> // lo colocan entre < >
#include "/usr/include/mysql/mysql.h"
MYSQL *mysql;
system("ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock");
mysql = new MYSQL;
if (!mysql_init(mysql)){
cerr<<"Init : "<< mysql_error(mysql);
}
mysql = mysql_real_connect(mysql,"localhost",user,pass,"conocimiento",0,NULL,0); //Enlazando base de datos
//REALIZANDO UNA CONSULTA
MYSQL_RES *res;
MYSQL_ROW row;
string SQL;
SQL = "SELECT * FROM pregunta";
mysql_real_query(mysql,SQL.c_str(),SQL.length());
res = mysql_store_result(mysql);
while ((row = mysql_fetch_row(res)))
{
cout << row[0] << " " << row[1] << endl;
}
//PARA COMPILAR
g++ -o nombre_ejecutable nombre_archivo.cpp -I/usr/include/mysql/ -L/var/lib/mysl -lmysqlclient
#include "/usr/include/mysql/mysql.h"
MYSQL *mysql;
system("ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock");
mysql = new MYSQL;
if (!mysql_init(mysql)){
cerr<<"Init : "<< mysql_error(mysql);
}
mysql = mysql_real_connect(mysql,"localhost",user,pass,"conocimiento",0,NULL,0); //Enlazando base de datos
//REALIZANDO UNA CONSULTA
MYSQL_RES *res;
MYSQL_ROW row;
string SQL;
SQL = "SELECT * FROM pregunta";
mysql_real_query(mysql,SQL.c_str(),SQL.length());
res = mysql_store_result(mysql);
while ((row = mysql_fetch_row(res)))
{
cout << row[0] << " " << row[1] << endl;
}
//PARA COMPILAR
g++ -o nombre_ejecutable nombre_archivo.cpp -I/usr/include/mysql/ -L/var/lib/mysl -lmysqlclient
Este código en mi particular no funciono.
Así que busque otro para probar si funcionaba la conexión, y el resultado exitoso es el siguiente:
#include
#include
#include
using namespace std;
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
conn = mysql_init(NULL);
/* Connect to database */
if (!mysql_real_connect(conn,"host","usuario","clave","nombre de la base de datos", 0,NULL,0)) {
cout<<(stderr, "%s\n", mysql_error(conn));
return(1);
}
/* send SQL query */
if (mysql_query(conn, "show tables")) { //donde dice show tables se sustituye por lo que se quiera ver de la base de datos
cout<<(stderr, "%s\n", mysql_error(conn));
return(1);
}
res = mysql_use_result(conn);
/* output table name */
cout<<("MySQL Tables in database:\n")<
while ((row = mysql_fetch_row(res)) != NULL)
cout<<("%s \n", row[0])<
/* close connection */
mysql_free_result(res);
mysql_close(conn);
return 0;
}
0 comentarios:
Publicar un comentario