miércoles, 27 de abril de 2011

MySql y C en Linux

Este ejercicio esta realizado con Ubuntu 10.10 y Mysql Server 5.x


Para hacer una conexión a una base de datos con mysql necesitamos hacer uso del api para mysql y c, para lo cual verificamos si existen las librerías para este soporte con


mysql_config –libs


lo cual nos aroja como resultado


-Wl,-Bsymbolic-functions -rdynamic -L/usr/lib/mysql -lmysqlclient


en caso de qeu marque que no esta instalada la librería la instalamos con el siguiente comando


sudo apt-get install libmysqlclient-dev


mysql_config –cflags


-I/usr/include/mysql -DBIG_JOINS=1 -fno-strict-aliasing -DUNIV_LINUX -DUNIV_LINUX


ya que verificamos e instalamos lo que necesitamos para el enlace entre mysql y c, a la creación de la base de datos


create database prueba;

use prueba;

create table datos(id int auto_increment not null primary key, nombre varchar(40),edad int);


insert into datos values (null, 'Alma Hernandez', 28),(null,'Jose Sanchez',39),(null, 'Martin loera', 25),(null,'Leonardo Cortez',26),(null,'Gustavo Romero',25);


proseguimos a la parte código:


//librerias que usaremos

#include //libreria que nos permite hacer el uso de las conexiones y consultas con mysql

#include < mysql.h >

#include < stdio.h >

int main() {

MYSQL *conn; //variable de conexion para mysql

MYSQL_RES *res; // variable que contendra el resultado de la consuta

MYSQL_ROW row; //variable que contendra los campos por cada registro consultado

char *server = "localhost"; //direccion del servidor 127.0.0.1, localhost o direccion ip

char *user = "root"; //usuario para consultar la base de datos

char *password = "root"; // contraseña para el usuario en cuestion

char *database = "prueba"; //nombre de la base de datos a consultar

conn = mysql_init(NULL); //inicializacion a nula la conexion

/* Connect to database */

if (!mysql_real_connect(conn, server,

user, password, database, 0, NULL, 0)) { // definir los arametros de la conexion antes establecidos

fprintf(stderr, "%s\n", mysql_error(conn)); // si hay un error definir cual fue dicho error

exit(1);

}

/* send SQL query */

if (mysql_query(conn, "select * from datos")) { // definicion de la consulta y el origen de la conexion

fprintf(stderr, "%s\n", mysql_error(conn));

exit(1);

}

res = mysql_use_result(conn);

printf("ID\tNombre\t\tedad\n");

while ((row = mysql_fetch_row(res)) != NULL) // recorrer la variable res con todos los registros obtenidos para su uso

printf("%s\t%s\t%s \n", row[0],row[1],row[2]); // la variable row se convierte en un arreglo por el numero de campos que hay en la tabla

//se libera la variable res y se cierra la conexion

mysql_free_result(res);

mysql_close(conn);

}


compilamos con


gcc -o Consulta $(mysql_config --cflags) Consulta.c $(mysql_config –libs)


ejecutamos

./Consulta


en un siguiente posteo haremos una estructura para poder almacenar todo el resultado de la base de datos y poder manipular completamente los datos.

lunes, 18 de abril de 2011

Actividades para conalep

Informacion para los estudiantes de conalep de sexto semestre. Perdon por el retraso pero aqui dejo las actividades a desarrollar, para la entrega de los proyectos
Planteamiento del problema
Solucion al planteamiento del problema
requerimientos (en que se desarrollara el sistemas)
Modelo entidad relacion
modelo relacional
creacion de la base de datos
diccionaria de datos
pantallas de sistema (previas)
creacion de codigos del sistema
revision de avances
modificacion de la revision
entrega de proyecto
pruebas de software
migracion del sistema
creacion de manuales
de usuario
tecnico

sábado, 9 de abril de 2011

Solucion Taller de base de datos

Bueno un poco a destiempo de la hora acordada, pero estube monitoreando haber cuantos llegaban y pues ahora son las 12:47 am del dia 10-04-2011 y hasta este momento dejo de recibir los correos y chequen la solucion de su examen, recuerden que para el lunes es el teorico, suerte.

miércoles, 6 de abril de 2011

Respaldar y restaurar base de datos en MySql

Apeticion de algunos alumnos que me han estado pidiendo como hacer los respaldos de las bases de datos en MySql he aqui las instrucciones.

Respaldar:
MysqlDump -u usuario -p basedatos > archivodestino.sql

Donde los parametros:
-u indentifican el usuario con permisos de administracion de la base de datos
-p ingresar la contraseña del usuario definido anteriormente
basededatos es el nombre de la base de datos a respaldar
archivodestino.sql es el nombre que tendra nuestro archivo donde haremos el respaldo de toda
la informacion de la base de datos

Restaurar la base de datos
Mysql -u usuario -p basedatos < archivorespaldo.sql

-u indentifican el usuario con permisos de administracion de la base de datos
-p ingresar la contraseña del usuario definido anteriormente
basededatos es el nombre de la base de datos a restaurar
archivorespaldo.sql es el nombre de nuestro archivo donde haremos la restauracion de toda
la informacion de la base de datos

lunes, 4 de abril de 2011

Taller de base de datos

aqui estan los codigo del dia 4-04-2011, y recuerden el dia 8 de abril es su examen practico

logueo con asp net mysql md5

Aqui les dejo el primero video de varios sobre programacion de paginas web con ASP.NET y conexion con base de datos de MySql, esperen los proximos videos, nos vemos.

sábado, 2 de abril de 2011

Captura de arreglos y visualizacion

Para los chicos de tercer semestre del tesoem, que me pideron como realizar la captura y mostrado de un arreglo bidimencional aqui les dejo el codigo espero les sirva nos vemos.
/** * @(#)arreglocap.java * * *
@author: Victor Hugo De la O Martinez *
@version 1.00 2011/4/2 */
import java.util.Scanner;
public class arreglocap {
public static void main (String[] args) {
Scanner teclado = new Scanner(System.in);
int a,b;
int[][] arreglo= new int [4][4];
for (a=0;a<4;a++)
for(b=0;b<4;b++){
System.out.println("Ingresa el valor para la posicion "+a+","+b);
arreglo[a][b]=teclado.nextInt();
}
for (a=0;a<4;a++)
for(b=0;b<4;b++){
System.out.println("valor en la posicion ["+a+"]["+b+"] = "+arreglo[a][b]);
}
}
}

comando de clase de taller de base de datos

Hola chicos les dejo el listado de comandos que se utilizo en clase de laboratorio del dia 1 de abril, para que pudan realizar su practica, analizar y realizar su respectivo apunte completo