Introducción a y Spring Data

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Introducción a y Spring Data"

Transcripción

1 Introducción a y Spring Data Miguel Olivares y Leonardo Menezes

2 Qué es MongoDB? Base de datos orientada a documentos Sin esquema Escalable DB => Colección => Documento

3 Qué es una colección? Es un grupo de documentos. Se identifica con un nombre Es el equivalente a una tabla en un modelo relacional

4 Qué es un documento? Un conjunto de pares clave-valor Coloquialmente un hash, map o dictionary Formato BSON

5 Arquitectura

6 Consola Consola javascript completa Cliente MongoDB

7 Por qué MongoDB? Fácil escalabilidad Flexibilidad Alto rendimiento Consultas potentes MapReduce

8 Benchmark (45 M de documentos) Tiempo medio de inserción Tamaño en disco SolR 0.603(ms) 49 GB CouchDB 0.297(ms) 43 GB Cassandra 0.516(ms) 50 GB MongoDB 0.040(ms) 43 GB

9 Introducción a Spring Data

10 Por que Spring Data? Mapeo/Conversión entre POJOs y docs MongoDB MongoTemplate Implementación automática de Repository(DAO) DSL basado en Java para Query, Criteria y Update Soporte a persistencia mixta(cross-store persistance) Integración con GeoSpatial de Mongo Integración con Map Reduce de Mongo Administración y monitorización por JMX

11 Diseño de una aplicación Diseño de documentos Consultas de la aplicación Optimización de las consultas

12 Diseño de documentos Identificar tipos de documentos Separar cada tipo de documento en distintas colecciones Referenciar vs Duplicar

13 Diseño de documentos Identificar tipos de documentos Separar cada tipo de documento en distintas colecciones Referenciar vs Duplicar Consistencia Consultas extras Inconsistencia Documento autodescriptivo

14 Documentos Usuario _id name following Tweet _id text date user geo

15 Usuarios name : Nombre de usuario following: Array de referencias a usuarios

16 Tweets text : texto date : objeto Date de javascript. user: referencia al usuario geo: coordenadas

17 Modelo MongoDB

18 Modelo Relacional

19 Inserción de usuarios var miguel = {"name" : "miguel", "following" : []} db.user.save(miguel) var leonardomenezes = {"name" : "leonardomenezes", "following" : [new DBRef("user", miguel._id)]} db.user.save(leonardomenezes)

20 Inserción de Tweets var tweet = {"text" : "Tweet ejemplo", "date" : new Date(), "user" : new DBRef("user", leonardomenezes._id), "geo" : { "x" : 1, "y" : 1 } } db.tweet.save(tweet)

21 Actualización de documentos Update tipo SQL Posibilidad de upsert, es decir, si no existe lo crea Existen muchos update modifiers : $inc, $set, $unset, $push, $pushall, $addtoset, $pop, $pull, $pullall, $rename, $bit

22 Actualización de documentos El usuario miguel ahora sigue a leonardomenezes: var ref_leo = new DBRef("user", leonardomenezes._id) db.user.update({"name" : "miguel"}, {$push: {"following" : ref_leo}})

23 MongoDB Java Driver public void ejemplo1() throws UnknownHostException, MongoException { Mongo mongo = new Mongo("localhost"); DB db = mongo.getdb("database"); db.dropdatabase(); DBCollection users = db.getcollection("users"); BasicDBObject usuario = new BasicDBObject(); usuario.put("nombre", "Marco Martinez"); users.insert(usuario); BasicDBObject usuario2 = new BasicDBObject(); usuario2.put("nombre", "Leonardo Menezes"); usuario2.put("following", new DBRef(db, "users", usuario)); users.insert(usuario2); }

24 MongoTemplate Mapeo/Conversión de POJO s

25 Mapeo de los = "tweets") public class Tweet { private ObjectId id; private String text; private Date private User = "users") public class User { private ObjectId id; private String private Set<User> following;... getters y constructor... private double[] coordinate;... getters y constructor...

26 Configuración de public class AppConfig { public Mongo mongo() throws UnknownHostException, MongoException { return new Mongo("localhost"); public MongoTemplate mongotemplate() throws UnknownHostException, MongoException { return new MongoTemplate(mongo(), "database"); }

27 Inserción con MongoTemplate /** * Ejemplo sencillo de inserción */ private void ejemplo1() { User user = new User("Marco Martinez"); User user2 = new User("Alejandro Marqués"); User user3 = new User("Javier Alba"); mongotemplate.save(user); logger.info("users " + user + " saved"); mongotemplate.save(user2); logger.info("users " + user2 + " saved"); mongotemplate.save(user3); logger.info("users " + user3 + " saved"); user.follow(user2); mongotemplate.save(user); logger.info("users " + user + " updated"); } INFO - Users User [id=4eb846971a8868b98ed3d7c3, name=marco Martinez, following=0] saved INFO - Users User [id=4eb846971a8868b98ed3d7c4, name=alejandro Marqués, following=0] saved INFO - Users User [id=4eb846971a8868b98ed3d7c5, name=javier Alba, following=0] saved INFO - Users User [id=4eb846971a8868b98ed3d7c3, name=marco Martinez, following=1] updated

28 Update Modifiers con Spring Data /** * Ejemplo de acutalización */ public void ejemplo2() { mongotemplate.updatefirst(new Query(new Criteria("name").is("Marc Martinez")), new Update().set("name", "Marco Martinez"), User.class); User user = mongotemplate.findone(new Query(new Criteria("name").is("Marco Martinez")), User.class); User user3 = mongotemplate.findone(new Query(new Criteria("name").is("Javier Alba")), User.class); mongotemplate.updatefirst(new Query(new Criteria("name").is("Marco Martinez")), new Update().addToSet("following", user3), User.class); user = mongotemplate.findone(new Query(new Criteria("name").is("Marco Martinez")), User.class); logger.info("user found: " + user); } INFO - User found: User [id=4eb84a0e1a885514a5745b2d, name=marco Martinez, following=2]

29 Diseño de una aplicación Diseño de documentos Consultas de la aplicación Optimización de las consultas

30 Consultas en MongoDB SELECT a,b FROM users SELECT * FROM users WHERE age=33 SELECT * FROM users WHERE age=33 ORDER BY name SELECT * FROM users WHERE age=33 ORDER BY name LIMIT=10 OFFSET=0 db.users.find({}, {a:1,b:1}) db.users.find({age:33}) db.users.find({age:33}).sort({name:1}) db.users.find({age:33}).sort({name:1}).limit(10).skip(0)

31 Perfil de usuario Seguidores Mis tweets

32 Consultas - Seguidores SELECT user_following.following_id FROM user, user_following WHERE user.name = leonardomenezes AND user.id = user_following.user_id db.user.findone({"name" : "leonardomenezes"}, { following : 1});

33 Consultas - Mis Tweets select * from tweet where tweet.user_id=x order by date DESC db.tweet.find({"user.$id" : X}).sort({'date' : -1})

34 Más consultas MongoDB SELECT * FROM users WHERE age>33 SELECT * FROM users WHERE name LIKE "Joe%" SELECT * FROM users WHERE a=1 or b=2 SELECT COUNT(*) FROM users db.users.find({age:{$gt:33}}) db.users.find({name:/^joe/}) db.users.find({$or:[{a:1},{b:2}]}) db.users.count()

35 Más operadores $where + código javascript $gt, $lt, $gte, $lte $all, $exists, $mod, $ne, $in, $nin, $nor, $or, $and, $size, $type...

36 Timeline SELECT * FROM tweet WHERE user_id = X OR user_id =... ORDER BY date db.tweet.find({"user.$id" : {$in : ids}}).sort({'date' : -1})

37 MongoRepository(DAO) CRUD(CrudRepository) count, delete, deleteall, exists, findone, save... Paginación/Ordenación(PagingAndSortingRepository) Métodos de búsqueda dinámicos

38 Repositorios count() Returns the number of entities available. delete(id id) Deletes the entity with the given id. findall(pageable pageable) Returns a Page of entities meeting the paging restriction provided in the Pageable object. findall(sort sort) Returns all entities sorted by the given options. delete(iterable<? extends T> entities) Deletes the given entities. delete(t entity) Deletes a given entity. deleteall() Deletes all entities managed by the repository. exists(id id) Returns whether an entity with the given id exists. findall() Returns all instances of the type. findone(id id) Retrives an entity by its primary key. save(iterable<? extends T> entities) Saves all given entities. save(t entity) Saves a given entity.

39 UserRepository y public interface UserRepository extends MongoRepository<User, ObjectId> { } public User findbyname(string public interface TweetRepository extends MongoRepository<Tweet, ObjectId> { } public List<Tweet> findbytextlike(string text); public List<Tweet> findbydatelessthan(date 'user': {'$ref': 'users', '$id': { '$oid':?0 } } }") public List<Tweet> findbyuserid(string id);

40 Configuración de los Repositorios <context:annotation-config /> <context:component-scan base-package="com.paradigmatecnologico" /> <mongo:repositories base-package="com.paradigmatecnologico" />

41 Inserción y Consulta con Repositorios /** * Ejemplo de consultas con Repositorios */ public void ejemplo3() { User user = userrepository.findbyname("alejandro Marqués"); logger.info("user found:" + user); tweetrepository.save(new Tweet("Hola mundo", new Date(), user, new double[] { 1.0, 0.1 })); List<Tweet> tweets = tweetrepository.findbyuserid(user.getid().tostringmongod()); logger.info("found " + tweets.size() + " tweets"); List<Tweet> tweetshola = tweetrepository.findbytextlike("hola"); logger.info("found " + tweetshola.size() + " tweets"); } INFO - User found:user [id=4eb84a0e1a885514a5745b2e, name=alejandro Marqués, following=0] INFO - Found 1 tweets INFO - Found 1 tweets

42 Customizando Repositorios public interface IAdvancedTweetRepository { } public List<Tweet> timeline(list<objectid> ids); public class AdvancedTweetRepositoryImpl implements IAdvancedTweetRepository public List<Tweet> timeline(list<objectid> ids) { return mongotemplate.find(new Query(new Criteria("user.$id").in(ids)), Tweet.class);} } } public interface TweetRepository extends MongoRepository<Tweet, ObjectId>, IAdvancedTweetRepository { }

43 Consultando el Timeline /** * Ejemplo de consulta timeline/repositorios customizados */ public void ejemplo4() { User user = userrepository.findbyname("marco Martinez"); List<ObjectId> following = new LinkedList<ObjectId>(); for (User currentfollowing : user.getfollowing()) { following.add(currentfollowing.getid()); } following.add(user.getid()); List<Tweet> tweets = tweetrepository.timeline(following); logger.info("total tweets found: " + tweets.size()); }

44 Diseño de una aplicación Diseño de documentos Consultas de la aplicación Optimización de las consultas

45 Índices Son muy similares a los índices MySQL Un índice es un B-Tree Necesarios cuando necesitas ordenar Para hacer un campo único

46 Índices Optimiza el uso de memoria Son útiles cuando las consultas devuelven parte de los documentos

47 Índices de la aplicación db.tweet.ensureindex({ user.$id : 1, date : -1}) db.user.ensureindex({ name : 1}, { unique : true})

48 Índices en Spring Data /** * Creando indices */ public void ejemplo5() { IndexDefinition nameindex = new Index().on("name", Order.ASCENDING).unique(Duplicates.DROP); mongotemplate.ensureindex(nameindex, User.class); GeospatialIndex geoindex = new GeospatialIndex("coordinates"); mongotemplate.ensureindex(geoindex, Tweet.class); }

49 Temas Avanzados Geolocalización Trending Topics Retweets

50 Geolocalización Requiere un índice especial El campo tiene que tener el formato: { x : 2, y : 3} [2, 3] { latitude : 2, longitude : 3}

51 Geolocalización db.tweet.ensureindex({ geo : 2d }) db.tweet.find({ geo : { $near : [1,0]}}).limit(10) db.tweet.find({ geo : { $within : { $center : [{ x : 0, y : 0},5]}}})

52 Geolocalización en Spring Data /** * Busquedas Geo */ public void ejemplo6() { List<Tweet> tweets = mongotemplate.find(new Query(new Criteria("coordinate").within(new Circle(3.0, 3.0, 5))), Tweet.class); logger.info("tweets found: " + tweets.size()); tweets = mongotemplate.find(new Query(new Criteria("coordinate").within(new Circle(3.0, 3.0, 1))), Tweet.class); logger.info("tweets found: " + tweets.size()); } INFO - Tweets found: 3 INFO - Tweets found: 0

53 Trending Topics Repeticiones de cadenas de palabras Analizar los tweets de la última hora

54 MapReduce MapReduce is the Uzi of aggregation tools Proceso en background Dos pasos: map y reduce ( y finalize)

55 Map Procedimiento que se ejecuta una vez sobre cada documento. Cada map emite 0 o más pares clave, valor

56 Reduce Procedimiento que se ejecuta una vez por cada clave La entrada es la clave y la lista de valores que fueron emitidas con esa clave La salida puede ser cualquier estructura de datos

57 Finalize Se ejecuta justo antes de guardar los resultados Útil para construir un resultado final, borrar elementos redundantes, etc

58 Resultado El resultado final se almacena en una colección Documentos con el formato: { } _id : clave_emitida, value: resultado_reduce

59 Map var map = function() { var words = this.text.split(" "); }; for (var i = 0; i < words.length; i += 1){ for (var j = i; j < words.length; j += 1){ // Slice [inclusive, exclusive) sub_words = words.slice(i, j + 1); sub_sentence = sub_words.join(" "); emit(sub_sentence, sub_words.length * sub_words.length); } }

60 Map Entrada: { } text : hola que tal Se emite: hola, 1 hola que, 4 hola que tal, 9 que tal, 4 que, 1 tal, 1

61 Reduce var reduce = function(key, emits) { var score = 0; for (var i in emits){ score += emits[i]; } return score; };

62 Ejecución Ejecución: db.tweet.mapreduce(map, reduce, {"out" : "TTs"}) Consulta: db.tts.find().sort({value: -1}).limit(10)

63 Finalize Reducir de palabras (preposiciones, conjunciones, etc) Filtrado de trending topics que están contenidos en otros

64 Map Reduce Spring Data /** * Ejemplo de MapReduce */ public void ejemplo7() { MapReduceOptions opts = new MapReduceOptions(); opts.outputcollection("tt"); opts.limit(15); MapReduceResults<TrendingTopic> results = mongotemplate.mapreduce("tweets", "classpath:map.js", "classpath:reduce.js", opts, TrendingTopic.class); }

65 Map Reduce Spring public interface TrendingTopicRepository extends MongoRepository<TT, String> { = "TT") public class TT { private String id; private float value; /** * Consultando resultado del MapReduce */ public void ejemplo8() { Page<TT> tt = trendingtopicrepository.findall(new PageRequest(0, 10, new Sort(Direction.DESC, "value"))); logger.info("trending topics found: " + tt.getnumberofelements()); }

66 Retweets En twitter es un poco caótico (RT, via...) Insertar tweet indicando que es un retweet haciendo referencia al tweet original Modificar el tweet original para llevar una cuenta de retweets

67 Otros usos en aplicaciones Analytics Logs Minería de twitter

68 Preguntas????????

69 Referencias MongoDB: The definitive guide 50 Tips and Tricks for MongoDB Developers Spring Data MongoDB Código de los ejemplos Spring Data

Trabajos de Ampliación. Bases de datos NoSQL.

Trabajos de Ampliación. Bases de datos NoSQL. BASES DE DATOS NoSql Son bases de datos pensadas para aplicaciones que hagan un uso intensivo de la misma. Estas bases de datos permiten una mayor flexibilidad y facilidad a la hora de introducir los datos

Más detalles

ATLAS MANUAL DE USUARIO SERVICIO DE AUDITORIA

ATLAS MANUAL DE USUARIO SERVICIO DE AUDITORIA ATLAS MANUAL DE USUARIO SERVICIO DE AUDITORIA Versión 1.3 Área de Aplicaciones Especiales y Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Manual de Usuario Servicio

Más detalles

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar / S Q Lenguaje de Consulta Estructurado L Wael Najjar / Wael Stephenson Najjar / Prieto Stephenson Prieto Contenido Parte I El Lenguaje de Consulta Estructurado. Lo que se puede hacer. Lenguaje Estandarizado.

Más detalles

SINTAXIS DE SQL-92. ::= CREATE SCHEMA [ ... ]

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

Más detalles

Bases de datos. 1. Introducción

Bases de datos. 1. Introducción Bases de datos 1. Introducción Habitualmente, los programas trabajan con información que está en un fichero. Por ejemplo, nuestro simulador de tráfico aéreo trabaja con una lista de planes de vuelo que

Más detalles

Tema 4. SQL. Juan Ignacio Rodríguez de León

Tema 4. SQL. Juan Ignacio Rodríguez de León Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional

Más detalles

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación De Índices (L32) UNA TABLA PUEDE CONTENER VARIOS ÍNDICES SQL SERVER CREA AUTOMATICÁMENTE ÍNDICES ÚNICOS PARA ASEGURAR LOS CONSTRAINTS DE PRIMARY KEY Y UNIQUE EL ÍNDICE POR DEFECTO PARA LA CLAVE

Más detalles

MASTER CLASS. Curso de Introducción MongoDB. Juan Manuel Parrilla. Consultor de Amaris en Telefónica I+D. Release Engineer * FUENTE DE DOCUMENTACIÓN :

MASTER CLASS. Curso de Introducción MongoDB. Juan Manuel Parrilla. Consultor de Amaris en Telefónica I+D. Release Engineer * FUENTE DE DOCUMENTACIÓN : MASTER CLASS Curso de Introducción MongoDB Juan Manuel Parrilla Consultor de Amaris en Telefónica I+D Release Engineer * FUENTE DE DOCUMENTACIÓN : 2 ÍNDICE Qué es MongoDB? Porqué usar MongoDB? Ventajas

Más detalles

Herramientas de Administración Para Oracle Database 12c

Herramientas de Administración Para Oracle Database 12c Newsletter Julio 2014 Contenido Herramientas de Administración Para Oracle Database 12c Página: 1 Herramientas de Administración Para Oracle Database 12c 5 Optimización de Procesos Automáticos que Utilizan

Más detalles

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas LENGUAJE SQL Que es SQL? SQL es un estándar un lenguaje estructurado para consultas SQL te permite acceder y manejar bases de datos SQL es un Estándar (ANSI American National Standards Institute) Que puede

Más detalles

Fundamentos de Oracle

Fundamentos de Oracle Fundamentos de Oracle Introducción Este curso de 40 horas de duración ofrece a los asistentes los conocimientos necesarios para trabajar con el servidor de bases de datos empresarial Oracle 10g, centrándose

Más detalles

Curso de PHP. Acceso a bases de datos MySQL en PHP

Curso de PHP. Acceso a bases de datos MySQL en PHP Curso de PHP Acceso a bases de datos MySQL en PHP Bases de datos en la Web Esquema básico de un sitio web soportado por bases de datos: Lenguaje SQL SQL (Structured Query Language) es el lenguaje que se

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

Conceptos Avanzados de Bases de datos

Conceptos Avanzados de Bases de datos Página 1 Conceptos Avanzados de Bases de datos (1) Introducción a las Bases de Datos (2) Lenguaje Estándar de Consultas SQL Definición formal SQL Página 2 Es un conjunto exhaustivo (en su modelización

Más detalles

abacformacio@abacformacio.com 1

abacformacio@abacformacio.com 1 Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas

Más detalles

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO LENGUAJE DE CONSULTA ESTRUCTURADO - SQL 1. TIPOS DE DATOS 2. COMANDOS DDL 2.1 Créate 2.2 Drop 2.3 Alter 3. COMANDOS DML 3.1 Select 3.2 Insert 3.3 Update 3.4 Delete 4. CLAUSULAS 4.1 From 4.2 Where 4.3 Having

Más detalles

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints Crear Una Base De Datos (L12) A TRAVÉS DE LA CONSOLA DE ADMINISTRACIÓN A TRAVÉS DEL ASISTENTE DE BASES DE DATOS (DATABASE WIZARD) A TRAVÉS DE COMANDOS SQL (CREATE DATABASE, CREATE TABLE) Crear Un Grupo

Más detalles

Bases de Datos - 2006. SQL - Ejemplos

Bases de Datos - 2006. SQL - Ejemplos Bases de Datos - 2006 SQL - Ejemplos Consideramos la siguiente base de datos relacional: persona(dni,primer-nombre,apellido) biblioteca(nombre-biblioteca,calle,número) libro(título,isbn,editorial,edición)

Más detalles

Aplicación de integración de búsqueda de texto completo en bases de datos NoSQL

Aplicación de integración de búsqueda de texto completo en bases de datos NoSQL M a r v i n R a m í r e z V a l e n z o - R e n é C u e v a s V a l e n c i a V Í N C U L O S J U L I O D E 2 0 1 3 VOLUMEN 10 NÚMERO 2 Aplicación de integración de búsqueda de texto completo en bases

Más detalles

MANUAL BÁSICO DEL LENGUAJE SQL

MANUAL BÁSICO DEL LENGUAJE SQL MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4

Más detalles

Desarrollo de sitios web con PHP y MySQL

Desarrollo de sitios web con PHP y MySQL Desarrollo de sitios web con PHP y MySQL Tema 4: Acceso a bases de datos MySQL en PHP José Mariano González Romano mariano@lsi.us.es Tema 4: Acceso a bases de datos MySQL en PHP 1. Bases de datos en la

Más detalles

LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2)

LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2) LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2) N O T A S D E L A M A T E R I A B A S E S D E D A T O S I L I C E N C I A T U R A E N C I E N C I A S D E L A C O M P U T A C I Ó N U N I V E R S I D A D D E

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/88 Contenidos 1 Introducción a las bases de datos

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/92 Contenidos 1 Introducción a las bases de datos

Más detalles

ÍNDICE PRIMERA PARTE... 17

ÍNDICE PRIMERA PARTE... 17 ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS

Más detalles

Implementando Aplicaciones.NET con ODP.NET & Entity Framework

Implementando Aplicaciones.NET con ODP.NET & Entity Framework Implementando Aplicaciones.NET con ODP.NET & Entity Framework Por Francisco Riccio Introducción Este material está dedicado a detallar algunos conceptos básicos de la arquitectura ADO.NET de Microsoft

Más detalles

Procesamiento de Eventos Complejos con Esper

Procesamiento de Eventos Complejos con Esper Procesamiento de Eventos Complejos con Esper Itinerario Formativo de Doctorado 7009 Juan Boubeta Puig Grupo UCASE de Ingeniería del Software Departamento de Ingeniería Informática 30 de mayo de 2013 J.

Más detalles

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1)

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1) A LAS BASES DE DATOS (L1) VENTAJAS TECNOLOGÍA BASE DE DATOS DISPONIBILIDAD Y VISIBILIDAD ALMACENAMIENTO CONSULTAS INFORMACIÓN RESPALDOS Y RESTAURACIÓN CONCEPTOS DE INTEGRIDAD DE LOS DATOS ELIMINACIÓN REDUNDANCIA

Más detalles

Bases de Datos 2. Teórico

Bases de Datos 2. Teórico Bases de Datos 2 Teórico Structured Query Language (SQL) Características de SQL Standard Opera sobre conjuntos de tuplas: incluso para las operaciones de inserción, borrado y actualización. No elimina

Más detalles

Nuevas Características de la Versión 9.1 de PostgreSQL. Alcides Rivera Posso

Nuevas Características de la Versión 9.1 de PostgreSQL. Alcides Rivera Posso Nuevas Características de la Versión 9.1 de PostgreSQL Alcides Rivera Posso AGENDA Características principales Mejoras en el rendimiento Administración Características de SQL y PL/PgSQL Características

Más detalles

Oracle 12c DISEÑO Y PROGRAMACIÓN

Oracle 12c DISEÑO Y PROGRAMACIÓN Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo

Más detalles

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 ESTRUCTURA DEL SEMINARIO Modulo 1: Crear y administrar una base de datos SQL Server Métodos para crear una base de datos SQLServer.

Más detalles

Software de Comunicaciones (2) Manual de Usuario Consola

Software de Comunicaciones (2) Manual de Usuario Consola Software de Comunicaciones (2) Manual de Usuario Consola ÍNDICE ÍNDICE... 2 Manual de Usuario... 3 1 SOFTWARE DE COMUNICACIONES... 3 1.1 Descripción del módulo... 3 2 MANUAL DE USUARIO... 4 2.1 Ingreso

Más detalles

Curso de Community Manager 2013

Curso de Community Manager 2013 Curso de Community Manager 2013 El Blog WordPress a fondo Alojamiento en wordpress.com Instalación de WordPress en servidor propio Diferencias. Ventajas e inconvenientes Interfaz de WordPress Acceder al

Más detalles

Como manejador de base de datos elegimos utilizar Absolute Database, que es un

Como manejador de base de datos elegimos utilizar Absolute Database, que es un APÉNDICE E Manejador de base de datos ABSOLUTE DATABASE Como manejador de base de datos elegimos utilizar Absolute Database, que es un componente de Delphi para manejar base de datos, muy poderoso y fácil

Más detalles

Bases de Datos: Structured Query Language (SQL)

Bases de Datos: Structured Query Language (SQL) Structured Query Language (SQL): Introducción Bases de Datos: Structured Query Language (SQL) Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

Más detalles

Primera Escuela de la Red Temática SVO. Madrid, Noviembre, 27 28, 2006. SQL básico. Carlos Rodrigo Blanco LAEFF INTA crb@laeff.inta.

Primera Escuela de la Red Temática SVO. Madrid, Noviembre, 27 28, 2006. SQL básico. Carlos Rodrigo Blanco LAEFF INTA crb@laeff.inta. Primera Escuela de la Red Temática SVO. Madrid, Noviembre, 27 28, 2006 SQL básico LAEFF INTA crb@laeff.inta.es Qué es SQL El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado,

Más detalles

Introducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4

Introducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4 Introducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4 by S. Muñoz-Gutiérrez stalinmunoz@yahoo.com, informes@grupolinda.org Grupo LINDA Facultad de Ingeniería UNAM México Octubre-Diciembre 2009 Identificando

Más detalles

Programación Orientada a Objetos Analista Programador Universitario Plan 2008 Año 2010

Programación Orientada a Objetos Analista Programador Universitario Plan 2008 Año 2010 INTRODUCCION Los objetos usados en aplicaciones JAVA mantienen su estado y comportamiento mientras la aplicación se halle en ejecución. Generalmente se necesita mantener el estado y comportamiento de los

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA

SERVICIO NACIONAL DE APRENDIZAJE SENA SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

Más detalles

DEFINICIÓN DE ONTOLOGÍAS EN SOFIA2

DEFINICIÓN DE ONTOLOGÍAS EN SOFIA2 DEFINICIÓN DE ONTOLOGÍAS EN SOFIA2 JULIO 2014 VERSIÓN 4 1 INDICE 1 INDICE... 2 2 INTRODUCCIÓN... 3 2.1 OBJETIVOS Y ALCANCE DEL PRESENTE DOCUMENTO... 3 3 CONCEPTOS BÁSICOS... 4 4 UN PRIMER VISTAZO... 5

Más detalles

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML) SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6

Más detalles

Introducción a las bases de datos.

Introducción a las bases de datos. Introducción a las BBDD 1 Centro de Referencia Linux UAM-IBM Introducción a las bases de datos. Carmen B. Navarrete Navarrete carmen_navarrete@telefonica.net Introducción a las BBDD 2 Qué vamos a ver?

Más detalles

Sql Basico. Seminar Introduction

Sql Basico. Seminar Introduction Sql Basico Seminar Introduction SQL Basico Sobre el modelo anterior de datos haremos un repaso de las consultas sql mas comunes. Devolver todos los datos de una tabla sin filtrar. Select campo_1, campo_2,

Más detalles

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: Bases de Datos Introducción a ORACLE Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: o Tradicionales como INTEGER, VARCHAR2, DATE,..., etc. o Nuevos y complejos:

Más detalles

APÉNDICE SQL (Structures Query Language)

APÉNDICE SQL (Structures Query Language) SQL 1 / 7 APÉNDICE SQL (Structures Query Language) SQL se ha establecido como lenguaje de bases de datos relacionales estándar, y se pueden distinguir tres partes: DDL (Data Definition Language) permite

Más detalles

ATLAS MANUAL DE USUARIO ARBOL ACCESIBLE

ATLAS MANUAL DE USUARIO ARBOL ACCESIBLE ATLAS MANUAL DE USUARIO ARBOL ACCESIBLE Versión 1.3 Área de Aplicaciones Especiales y Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Manual de Usuario del NORMATIVA

Más detalles

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc). LENGUAJE SQL Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los datos, este mismo es que permite crear la estructura de la base de datos. Lenguaje de Definicion

Más detalles

BASES DE DATOS OBJETO-RELACIONALES

BASES DE DATOS OBJETO-RELACIONALES Departament d Informàtica BASES DE DATOS OBJETO-RELACIONALES Un sistema de gestión de pedidos Wladimiro Díaz Villanueva Curso 2001-2002 Índice General 1 Introducción 3 1.1 Entidades y relaciones.................................

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

Dinámica El framework RADical J2EE sin complicaciones. Biblioteca Técnica: audit logs Control declarativo de trazas de auditoria con Dinámica

Dinámica El framework RADical J2EE sin complicaciones. Biblioteca Técnica: audit logs Control declarativo de trazas de auditoria con Dinámica Biblioteca Técnica: audit logs Control declarativo de trazas de auditoria con Dinámica Última actualización: 2008-09-30 Requiere framework v2.1.4 release 2008/09 en adelante Contenido Sumario...2 Requerimientos...2

Más detalles

JSF 2.0 (Java Server Faces) Yadira Jarvio Hernández

JSF 2.0 (Java Server Faces) Yadira Jarvio Hernández JSF 2.0 (Java Server Faces) Yadira Jarvio Hernández Aportaciones de Jsf: Unión entre los cliente Web actuales y el modelo tradicional de componentes. Separa la renderización del componente. Desplazar la

Más detalles

Tema 3: Genericidad en Java. Tema 3: Genericidad en Java. Objetivos y Bibliografía. Modelos de Datos Genéricos

Tema 3: Genericidad en Java. Tema 3: Genericidad en Java. Objetivos y Bibliografía. Modelos de Datos Genéricos Tema 3: Genericidad en Java Tema 3: Genericidad en Java Germán Moltó Escuela Técnica Superior de Ingeniería Informática Universidad Politécnica de Valencia Índice general: 1. Definición y Ventajas de la

Más detalles

INSTITUCIÓN EDUCATIVA GABRIEL GARCIA MÁRQUEZ BASE DE DATOS. DESARROLLO DE SOFTWARE Página 1 de 28 SQL SQL

INSTITUCIÓN EDUCATIVA GABRIEL GARCIA MÁRQUEZ BASE DE DATOS. DESARROLLO DE SOFTWARE Página 1 de 28 SQL SQL Página 1 de 28 es un estandar para accesar y manejar bases de datos Este tutorial te va a mostrar como manejar bases de datos en My, Server, MS Access, Oracle, Sybase, DB2 y otras bases de datos Que es?

Más detalles

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2 Objetivos Herencia. Utilización de interfaces y clases abstractas. Índice 1. Interfaces 1 2. Clases abstractas 2 3. Collections Framework 3 3.1. Collection........................................... 3

Más detalles

ALTAS MANUAL DE USUARIO ENVÍO DE CORREOS ELECTRÓNICOS

ALTAS MANUAL DE USUARIO ENVÍO DE CORREOS ELECTRÓNICOS ALTAS MANUAL DE USUARIO ENVÍO DE CORREOS ELECTRÓNICOS Versión 1.0 Área de Aplicaciones Especiales y Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Manual de Usuario

Más detalles

Crear BD en. Isis Bonet Cruz, PhD

Crear BD en. Isis Bonet Cruz, PhD Crear BD en Isis Bonet Cruz, PhD SQL Server Microsoft SQL Server es un sistema de administración y análisis de bases de datos relacionales de Microsoft para soluciones de comercio electrónico, línea de

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011 Structured Query Language () Fundamentos de Bases de Datos InCo - Un poco de historia Lenguajes de consulta relacionales: SEQUEL (IBM-1970) QUEL (Ingres-1970) QBE (IBM-1970) es el lenguaje comercial más

Más detalles

public static void main(string[ ] args) { Numero f1 = new Numero(3); Numero f2 = new Numero(4); Numero f3 = f1; f1.value = f2.value; Numero f4 = null;

public static void main(string[ ] args) { Numero f1 = new Numero(3); Numero f2 = new Numero(4); Numero f3 = f1; f1.value = f2.value; Numero f4 = null; Examen de Programación Convocatoria de Septiembre 2005 Licenciatura de Lingüística y Nuevas Tecnologías Pregunta 1 Tenemos el siguiente programa: public class Numero { int value; public Numero(int i) {

Más detalles

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

BASE DE DATOS QUÉ ES UNA BASE DE DATOS? BASE DE DATOS BASE DE DATOS QUÉ ES UNA BASE DE DATOS? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Actualmente la mayoría de

Más detalles

Lenguaje para descripción de datos

Lenguaje para descripción de datos Amparo López Gaona tación Fac. Ciencias, UNAM Mayo 2012 Definición de Datos El lenguaje para definición de datos permite especificar: Esquema de cada relación. El dominio de cada atributo. Restricciones

Más detalles

Programación con JDBC (Java DataBase Connectivity ), Servlets y JSP (Java Server Pages)

Programación con JDBC (Java DataBase Connectivity ), Servlets y JSP (Java Server Pages) Programación con JDBC (Java DataBase Connectivity ), Servlets y JSP (Java Server Pages) Autor: José Vicente Núñez Zuleta (jose@eud.com, josevnz@yahoo.com) Puntos a tratar Qué es JDBC? Arquitectura de un

Más detalles

PHP Y BASES DE DATOS. Introducción a SQL

PHP Y BASES DE DATOS. Introducción a SQL PHP Y BASES DE DATOS M.I María Luisa González Ramírez Introducción a SQL SQL es el lenguaje usado para interactuar con las base de datos. Es un lenguaje normalizado, utilizado por los diferentes motores

Más detalles

CURSO DE SQL SERVER 2005

CURSO DE SQL SERVER 2005 CURSO DE SQL SERVER 2005 Una vez finalizado el curso, el alumno estará preparado para: Instalar y configurar SQL Server 2005. Comprender los conceptos más importantes del diseño de bases de datos. Crear

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005

FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005 Dpto. de Ingeniería de Sistemas Telemáticos E.T.S.I. Telecomunicación Universidad Politécnica de Madrid FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005 Normas de examen: Con libros y apuntes Duración: 2 horas

Más detalles

MySQL y Sesiones en PHP. Área de Ingeniería Telemática

MySQL y Sesiones en PHP. Área de Ingeniería Telemática MySQL y Sesiones en PHP Contenido Repaso de SQL PHP y MySQL MySQL en PHP 2 Numéricos Standard: Repaso SQL: tipo de datos INTEGER o INT, SMALLINT, DECIMAL o DEC, NUMERIC FLOAT, REAL, DOUBLE PRECISION BIT

Más detalles

Grados Ing. Inf. y Mat. Inf. Julio 2014 Algoritmos y Estructura de Datos Página 1 de 6

Grados Ing. Inf. y Mat. Inf. Julio 2014 Algoritmos y Estructura de Datos Página 1 de 6 Grados Ing. Inf. y Mat. Inf. Julio 201 Algoritmos y Estructura de Datos Página 1 de 6 Algoritmos y Estructura de Datos: Examen Julio (Solución) Grados Ing. Inf. y Mat. Inf. Julio 201 Departamento de Lenguajes,

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

Más detalles

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet 2005-2006. DLSI - Universidad de Alicante 1

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet 2005-2006. DLSI - Universidad de Alicante 1 Departamento de Lenguajes y Sistemas Informáticos JavaScript Programación en Internet Curso 2005-2006 Contenidos Introducción El lenguaje Validación de formularios DLSI - Universidad de Alicante 1 Introducción

Más detalles

Tema 33. El lenguaje SQL

Tema 33. El lenguaje SQL Tema 33. El lenguaje SQL Introducción... 1 Modos de uso... 2 Ejecución de las sentencias SQL... 2 Instrucciones DDL Data Definition Language-... 3 Instrucciones DML Data Manipulation Language-... 4 Instrucciones

Más detalles

SQL básico. SQL básico http://idesweb.es/ 1. Contenido

SQL básico. SQL básico http://idesweb.es/ 1. Contenido SQL básico http://idesweb.es/ 1 SQL básico El presente documento no tiene más aspiraciones que servir de recordatorio mínimo para las órdenes más básicas y en su mínima expresión. No es un manual de SQL

Más detalles

Diseño de BD Objeto- Relacionales

Diseño de BD Objeto- Relacionales Diseño de BD Objeto- Relacionales Universidad Rey Juan Carlos Belén Vela Bibliografía Tecnología y Diseño de Bases de Datos. Piattini, M., Marcos, E., Calero, C. y Vela, B. Ra-ma, 2006 (cap. 20). Bases

Más detalles

Unidad. Lenguaje SQL. (Structured Query Language)

Unidad. Lenguaje SQL. (Structured Query Language) Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio

Más detalles

Motores de Base de Datos Libres: Postgresql y MySql. Ing. Ricardo Naranjo Faccini, M.Sc

Motores de Base de Datos Libres: Postgresql y MySql. Ing. Ricardo Naranjo Faccini, M.Sc XXIV SALÓN DE INFORMÁTICA Motores de Base de Datos Libres: Postgresql y MySql Ing. Ricardo Naranjo Faccini, M.Sc Novell Product Manager Nexsys de Colombia S.A. Octubre 13 de 2004 Encontrando el camino

Más detalles

Bloque IV: Usos avanzados

Bloque IV: Usos avanzados Bloque IV: Usos avanzados 1. Subiendo archivos 2. Constantes mágicas 3. Métodos mágicos 4. Autoloading 5. Reflection 6. Objetos como arrays Desarrollo web avanzado con PHP5 Bloque IV: Usos avanzados 1.

Más detalles

Symfony. Framework para el desarrollo de aplicaciones Web con PHP

Symfony. Framework para el desarrollo de aplicaciones Web con PHP Symfony Framework para el desarrollo de aplicaciones Web con PHP Temario Conceptos Porque Utilizarlo? Características Herramientas Integradas Model Controller View Scaffolding Conceptos Framework para

Más detalles

Como usar Zend_Auth del Zend Framework

Como usar Zend_Auth del Zend Framework Como usar Zend_Auth del Zend Framework Elaborado por Rob Allen, www.akrabat.com Revision 1.0.4 Copyright 2007 Traducido por Claudio Cossio, www.ajaxcode.net El propósito de este tutorial es dar una introducción

Más detalles

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos Problemática: Desarrollar aplicaciones Cliente Servidor utilizando Sockets

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y

Más detalles

Tema 2 Modelos de Base de Datos. Profesor Luis Gmo. Zúñiga Mendoza UMCA

Tema 2 Modelos de Base de Datos. Profesor Luis Gmo. Zúñiga Mendoza UMCA Tema 2 Modelos de Base de Datos Profesor Luis Gmo. Zúñiga Mendoza UMCA Introducción Como hemos visto la base de datos consiste en una colección de datos estructura, que finalmente permite ser accedida

Más detalles

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM Estructura de una BD Oracle. Una BD Oracle tiene una estructura física y una estructura lógica que se mantienen separadamente. La estructura física se corresponde a los ficheros del sistema operativo:

Más detalles

Programación Android. Rafael Morón Abad rafaelmoron@gmail.com

Programación Android. Rafael Morón Abad rafaelmoron@gmail.com Programación Android Rafael Morón Abad rafaelmoron@gmail.com 3.5. Persistencia Persistencia Para poder almacenar información persistente, Android nos proporciona 3 mecanismos: 1. Preferencias 2. Ficheros

Más detalles

Conectar Flash con Access usando MDM Zinc

Conectar Flash con Access usando MDM Zinc Conectar Flash con Access usando MDM Zinc Con este tutorial pretendo enseñar la conexión básica entre Flash / Actionscript y Microsoft Access mediante MDM Zinc, para poder empezar a crear aplicaciones

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción:

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción: Guía de MySQL Contenidos: 1.- Introducción: 2.- Creación de una base de datos. CREATE DATABASE. 3.- Creación de una tabla y mostrar sus campos (CREATE TABLE - SHOW TABLES - describe - DROP TABLE) 4.- Instrucción

Más detalles

GALA CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) No Consultas. Definiciones Transacciones ( L33 )

GALA CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) No Consultas. Definiciones Transacciones ( L33 ) Definiciones Transacciones ( L33 ) CONCEPTO COMMIT, ROOLBACK SAVEPOINTS (SAVE TRANSACTION) Transacciones En Microsoft ( L33 ) MANUAL (REQUIERE PROGRAMACION) AUTOMATICO (COM+ O DTM) DTM (DISTRIBUTED TRANSACTION

Más detalles

Curso SQL Nivel Avanzado 1. Miguel Jurado García

Curso SQL Nivel Avanzado 1. Miguel Jurado García Curso SQL Nivel Avanzado 1 Miguel Jurado García Temario Sesión 1: 1- Elementos de Sintaxis Uso de Variables Collation y las Fechas Construcción de Sentencias Dinámicas 2- SQL Server Management Studio Filtrado

Más detalles

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

BASES DE DATOS AVANZADAS Transacciones en MYSQL

BASES DE DATOS AVANZADAS Transacciones en MYSQL Ejercicio Transacciones mysql> CREATE TABLE innotest (campo INT NOT NULL PRIMARY KEY) TYPE = InnoDB; Query OK, 0 rows affected (0.10 sec) mysql> INSERT INTO innotest VALUES(1); Query OK, 1 row affected

Más detalles

Instrucciones para el despliegue de EJBs

Instrucciones para el despliegue de EJBs Apuntes de J2EE Instrucciones para el despliegue de EJBs Uploaded by Ingteleco http://ingteleco.webcindario.com ingtelecoweb@hotmail.com La dirección URL puede sufrir modificaciones en el futuro. Si no

Más detalles

Práctica sobre compartición de instancias remotas.

Práctica sobre compartición de instancias remotas. Práctica sobre compartición de instancias remotas. Para esta práctica se ha construido un pequeño sistema cliente-servidor que permite la resolución de Sudokus entre varios jugadores. El servidor consta

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Amparo López Gaona México, D.F. Semestre 2000-I Restricciones de Integridad Las principales restricciones de integridad que pueden indicarse son: La clave primaria. Claves candidatas.

Más detalles

Clases y Objetos. Informática II Ingeniería Electrónica

Clases y Objetos. Informática II Ingeniería Electrónica Clases y Objetos Informática II Ingeniería Electrónica Los Tipos de Datos Hasta ahora, en un programa podemos usar para representar variables a: Tipos fundamentales : enteros (int), caracteres (char),

Más detalles

DESCRIPCIÓN ESPECÍFICA

DESCRIPCIÓN ESPECÍFICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios. SUBSECTOR: Informática. Nombre del Módulo: Programación de Base de Datos Código: CSTI0077 Duración total: 54 horas Objetivo General: Participar

Más detalles

Definición de clases: Herencia, polimorfismo, ligadura dinámica

Definición de clases: Herencia, polimorfismo, ligadura dinámica Tema 7 Definición de clases: Herencia, polimorfismo, ligadura dinámica Con alguna frecuencia es necesario definir clases de objetos entre las cuales hay elementos comunes. En una aplicación en la cual

Más detalles