Miguel

Páginas: 5 (1116 palabras) Publicado: 25 de enero de 2013
http://undersecurity.net Servidor irc : irc.ircnode.com Canal irc : #undersec

Manejo de Bases de Datos Mysql en Lenguaje C
By: S[e]C

Entendiendo el tratamiento de una base de datos MySQL.
Antes de ir al código como tal, vamos a ver el manejo de una base de datos MySQL manualmente, para entender de mejor manera el código mas adelante, vamos allá: – Primero veremos las bases de datosactuales, con el comando SHOW DATABASES, y crearemos una nueva base de datos llamada “prueba”. –

– Ahora si vemos las bases de datos nuevamente ( SHOW DATABASES), veremos que nuestra base de datos “prueba” esta creada.

– Ahora debo seleccionar la base de datos para poder trabajar con ella:

– Una vez seleccionada la base de datos a utilizar podremos realizar consultas a ella. – Ahora creare unatabla que sera con la que trabajaremos durante todo el ejemplo:

– He creado mi tabla “persona” con dos campos, el campo “nombre” que es un varchar (string) de longitud 40, y un campo “teléfono” que es un numero de tipo entero. – Haré una consulta a mi tabla para obtener los registros existentes, como aun no añadimos ningún registro debería decirnos que esta vacía, veamos:

– Esta vacía :P,bueno vamos a insertar datos no?, en sql esto se realiza mediante la instrucción INSERT, de la siguiente forma:

– Ahora hemos ingresado registros a nuestra tabla, haré nuevamente una consulta SELECT para ver los registros de nuestra tabla, haber si nos muestra los datos que ingresamos, veamos:

– Ahí están nuestros datos :D , hemos aprendido a insertar datos en nuestra tabla, ahora lo quequerremos conseguir es ser capaces de realizar al-menos las 3 operaciones básicas para una base de datos, es decir: inserción, modificación y eliminación de elementos, ya hemos visto la inserción, solo nos queda la modificación y la eliminación. – Veamos la modificación de datos, esto lo haremos mediante la instrucción UPDATE, de la siguiente forma:

– Como hemos podido ver eh modificado elteléfono correspondiente al usuario “S[e]C” a “12345678”, ademas eh realizado una consulta SELECT para comprobar que el cambio se aplicara satisfactoriamente. – Ahora veremos la eliminación de elementos, lo cual se realiza con la instrucción DELETE, veamos como:

– Vemos que el registro con nombre igual a “OzX” ah sido eliminado, y otra vez eh realizado una consulta SELECT para mostrar que los cambiostuvieron efecto. – Bueno ya sabemos como crear una base de datos y manipular datos en ella (inserción, eliminación y modificación), por lo que podemos entrar a lo que es programar aplicaciones que utilicen este lenguaje, en nuestro caso MySQL.

El código:
Bueno la manera de abordar esta parte sera: les presentare un código desarrollado por mi el cual implementa las tres operaciones básicas conbases de datos, las que hemos visto antes: He subido el código a pastebin, para que puedan estudiarlo mejor y hacer copy paste sin problemas xD y lo prueben :) .Bueno ahora lo que haré sera desglosar el código y explicar parte a parte para intentar lograr una buena comprensión de el, vamos allá:

– En la primera linea, especifico como realizo la compilación del código en mi fedora, en otrasdistribuciones, les tocara buscar :P . – Luego la inclusión de bibliotecas, nada nuevo hasta ahora, incluyendo mysql.h que es la que nos interesa .

– Manejare estas definiciones para trabajar la conexión mas adelante en el código.

– Bueno estos son los prototipos de las funciones que implemente para realizar las operaciones básicas vistas en la primera parte de este documento. MYSQL Este tipode dato representa una conexión a una DB mysql MYSQL_ROW Representa una fila de datos en una consulta mysql, se suele usar como arreglo para tomar los valores de las distintas columnas de una fila. MYSQ_RES Representa el resultado de una consulta mysql, y bueno el resto son tipos de datos vacíos en C.

MYSQL* con, es un puntero a una conexión mysql , se utilizara para representar la conexión...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Miguel
  • Miguel
  • Miguel
  • Miguel
  • Miguel
  • miguel
  • miguel...
  • Miguel

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS