Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

OODBMS y ORM

Estas en el tema de OODBMS y ORM en el foro de Bases de Datos General en Foros del Web. Hola pues andaba de curioso, leyendo aqui http://es.wikipedia.org/wiki/Mapeo_objeto-relacional Cuando hablan que una base de datos esta orientada a objetos es cuando un campo sql, dijeramos ...
  #1 (permalink)  
Antiguo 20/02/2015, 08:59
 
Fecha de Ingreso: julio-2014
Mensajes: 161
Antigüedad: 10 años, 5 meses
Puntos: 4
OODBMS y ORM

Hola pues andaba de curioso, leyendo aqui

http://es.wikipedia.org/wiki/Mapeo_objeto-relacional

Cuando hablan que una base de datos esta orientada a objetos es cuando un campo sql, dijeramos que almacena varios datos, por ejemplo el campo telefono

4492458490|4492707811|4492707811

Entonces por ejemplo con php uso un explode("|",$campo['telefono']), le hago un ciclo y recorro los telefonos del campo
ANOTACION

Lei un poquito mas esto, podria decirse que es un diseño de la base de datos orientado a objetos, pero la base de datos, no lo es. Tambien pense si uso PROCEDURES y FUNCTIONS cuando creo mis bases de datos, ya soy un programador que usa base de datos orientada a objetos, pero no

Entonces lei y oracle si puede, no se si postgresql, pueda crear un objeto con varios procedures y funciones, como lo hago con php, pero ahora con SQL, digamos

class ALGO{
PROCEDURE()
}

PERO EN EL SQL, NO EN EL PHP, NI .NET

Estoy bien o me regreso?
  #2 (permalink)  
Antiguo 20/02/2015, 09:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: OODBMS y ORM

Tienes que leer con un mejor entendimiento...
En el SQL no se crea la base de datos orientada a objetos, no lo admite. Lo que se hace es implementar algo que permite generar esa transformación entre objetos y la base relacional.
El mismo artículo que linkeaste lo dice:
Cita:
El mapeo objeto-relacional (más conocido por su nombre en inglés, Object-Relational mapping, o sus siglas O/RM, ORM, y O/R mapping) es una técnica de programación para convertir datos entre el sistema de tipos utilizado en un lenguaje de programación orientado a objetos y la utilización de una base de datos relacional como motor de persistencia. En la práctica esto crea una base de datos orientada a objetos virtual, sobre la base de datos relacional. Esto posibilita el uso de las características propias de la orientación a objetos (básicamente herencia y polimorfismo). Hay paquetes comerciales y de uso libre disponibles que desarrollan el mapeo relacional de objetos, aunque algunos programadores prefieren crear sus propias herramientas ORM.
(los resaltados son míos)

En esencia, no es ago implementado a nivel SQL, sino programación.

Luego explica:
Cita:
Implementaciones

Los tipos de bases de datos usados mayoritariamente son las bases de datos SQL, cuya aparición precedió al crecimiento de la programación orientada a objetos en los 1990s. Las bases de datos SQL usan una serie de tablas para organizar datos. Los datos en distintas tablas están asociados a través del uso de restricciones declarativas en lugar de punteros o enlaces explícitos. Los mismos datos que pueden almacenarse en un solo objeto podrían requerir ser almacenados a través de varias tablas.

Una implementación del mapeo relacional de objetos podría necesitar elegir de manera sistemática y predictiva qué tablas usar y generar las sentencias SQL necesarias.
¿Se entiende?
No es tarea del DBMS definir como se construye esa transformación, sino de programación. De allí que la implementación del ORDBM se hace usualmente por medio de frameworks como Doctrine, Hibernate, NHibernate, Propel, y otros.

Una solución extensiva es usar bases NoSQL, pero alli te alejas del paradigma relacional, y a pesar de su potencia, tiene restricciones que la hacen poco adecuada para cierto tipo de sistemas que requieren alta consistencia y transaccionalidad.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: ejemplo, orm, php, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:25.