ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Tutorial Berkeley DB


Enviado por   •  22 de Enero de 2019  •  Apuntes  •  1.480 Palabras (6 Páginas)  •  89 Visitas

Página 1 de 6

Tipos de bases de datos Berkeley DB

BTREE: Orden preestablecido

HASHES: Tabla Hash. Búsqueda rápida.

REGISTROS: Orden secuencial.

Librerías          -→/usr/lib/...

Compilar con -ldb

0-→éxito                !=0-→error, perror()

ABRIR

*Nombre del programa en internet: opendb.c*/

/*

* abrir_db.c –Apertura y posterior cierre de una base de datos Berkeley DB

*/

#include

#include

#include

#include

int main(void){

        DB *puntero_db;         *Handler o descriptor de base de datos*/

        int valor_retornado;

        valor_retornado =db_open(“test.db”, DB_BTREE, DB_CREATE, 0600, NULL, NULL, &puntero, db);

        if(valor_retornado){

                perror(“db_open”);

                exit(EXIT_FAILURE);

        }

        DB→close(puntero_db, 0);

        exit(EXIT_SUCCESS);

}

AÑADIR REGISTRO

*Nombre del programa en internet: addb.c*/

/*

* añadir_registro.c –Apertura y posterior cierre de una base de datos Berkeley DB

*/

#include

#include

#include

#include

int main(void){

        DB *puntero_db;

        int valor_retornado, i =0;

        DBT clave, valor;

        valor_retornado =db_open(“test.db”, DB_BTREE, DB_CREATE, 0600, NULL, NULL, &puntero, db);

        if(valor_retornado){

                perror(“db_open”);

                exit(EXIT_FAILURE);

        }

        *Inicializar primero el par clave y valor*/

        memset(&clave, 0, sizeof(clave);        

        memset(&valor, 0, sizeof(valor);

        *Asignarles valores a clave y valor*/

        clave.data=”uno”;

        clave.size=sizeof(“uno”);

        valor.data= “Compilacion de programas”,

        valor.size=sizeof(“Compilacion de programas”);

        *Almacenar el par clave/valor*/

        valor_retornado=puntero_db→put(db, NULL, &key, &value, DB_NOOVERWRITE);

        if(valor_retornado ==DB_KEYEXIST){

                fprintf(stderr, “Clave %s ya existe\n”, (char *)clave.data);

                exit(EXIT_FAILURE);

        }else{

                perror(“put”);

                exit(EXIT_FAILURE);

        }

        

        DB→close(puntero_db, 0);

        exit(EXIT_SUCCESS);

}

SUPRESIÓN

*Nombre del programa en internet: delb.c*/

/*

* suprimir_registro.c –Apertura y posterior cierre de una base de datos Berkeley DB

*/

#include

#include

#include

#include

#include

int main(void){

        DB *puntero_db;

        int valor_retornado;

        DBT clave;

        valor_retornado =db_open(“test.db”, DB_BTREE, DB_CREATE, 0600, NULL, NULL, &puntero, db);

        if(valor_retornado){

                perror(“db_open”);

                exit(EXIT_FAILURE);

        }

        *Inicializar primero la clave*/

        memset(&clave, 0, sizeof(clave);        

        *La clave del registro que queremos eliminar*/

        clave.data=”uno”;

        clave.size=strlen(“uno”)+1;

        *Eliminar el registro*/

        valor_retornado=puntero_db→del(puntero_db, NULL, &clave, 0);

        if(valor_retornado==DB_NOTFOUND){  *La clave no existe*/

                fprintf(stderr, “Clave $s no encontrada\n”, (char *)clave.data);

                exit(EXIT_FAILURE);

...

Descargar como (para miembros actualizados) txt (6 Kb) pdf (106 Kb) docx (12 Kb)
Leer 5 páginas más »
Disponible sólo en Clubensayos.com