Howto mysql c

From Ibbddunq

Contents

Instalación en Ubuntu

sudo apt-get install mysql-server
user: root
password: clave

Comandos de administración de una DB

Creación de una base de datos

mysqladmin -u {usr} -p{pass} create {dbname}
mysqladmin -u root -pclave create dbprueba

Ejecución de un batch script:

mysql  -u {usr} -p{pass} {dbname} < {file}

Creación de un dump de la base de datos

mysqldump -u {usr} -p{pass} [{dbname}  [{tabla}  [{field}]]]
mysqldump -u root -pclave dbprueba > dump.sql

Mysql C API

Instalar en ubuntu (o debian):

libmysql++-dev

Contenido de file.c

#include <mysql.h>
#include <stdio.h>
int main(void) {
  MYSQL *conn;
  MYSQL_RES *res;
  MYSQL_ROW row;
 /* Change me */
  char *server = "localhost";
  char *user = "root";
  char *password = "PASSWORD";
  char *database = "mysql";
  
  conn = mysql_init(NULL);
  
  /* Connect to database */
  if (!mysql_real_connect(conn, server,
        user, password, database, 0, NULL, 0)) {
     fprintf(stderr, "%s\

", mysql_error(conn));

     exit(1);
  }
  /* send SQL query */
  if (mysql_query(conn, "show tables")) {
     fprintf(stderr, "%s\

", mysql_error(conn));

     exit(1);
  }
  
  res = mysql_use_result(conn);
     
  /* output table name */
  printf("MySQL Tables in mysql database:\

");

  while ((row = mysql_fetch_row(res)) != NULL)
     printf("%s \

", row[0]);

  /* close connection */
  mysql_free_result(res);
  mysql_close(conn);
 
 return 0;
}

Para compilar (file.c):

gcc -o objectfile $(mysql_config --cflags) file.c $(mysql_config --libs)

Para ejecutar:

./objectfile


Fuentes

Personal tools