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

acceso a la base de datos

Estas en el tema de acceso a la base de datos en el foro de Bases de Datos General en Foros del Web. Soy novato en mysql y php. Hace mucho tiempo trabajé con un programa de bases de datos que se llamaba dbase III, y hay cosas ...
  #1 (permalink)  
Antiguo 11/09/2009, 07:52
Avatar de PacoRuiz  
Fecha de Ingreso: abril-2009
Mensajes: 254
Antigüedad: 15 años
Puntos: 3
acceso a la base de datos

Soy novato en mysql y php. Hace mucho tiempo trabajé con un programa de bases de datos que se llamaba dbase III, y hay cosas que yo hacía en ese programa que no tengo claro cómo hacerlas con mysql.

En mysql, cuando quiero consultar información de la base de datos, utilizo el select, que me genera un resultado, y posteriormente transformo ese resultado en el formato que me venga bien para imprimirlo, pasarlo a un array o lo que sea.

En dbase III, aunque no lo recuerdo muy bien había un puntero que apuntaba a un "registro actual" de la base de datos. Ese puntero podía avanzar y retroceder, y se podía filtrar la base de datos de modo que el puntero, en vez de avanzar por la base de datos completa, lo hacía por la base de datos filtrada.

Esa manera de trabajar la echo de menos en mysql. Por ejemplo, si quiero hacer un bucle que recorra la base de datos de registro en registro guardando un campo en una variable.
  #2 (permalink)  
Antiguo 11/09/2009, 08:29
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 3 meses
Puntos: 360
Respuesta: acceso a la base de datos

será que te refieres a cursores?
Mira esto en mysql
http://dev.mysql.com/doc/refman/5.0/es/cursors.html
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 11/09/2009, 09:53
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: acceso a la base de datos

El dBase III, dBase III+, y el FoxBase, eran en realidad un hibrido entre GUI y aplicaciones de consola que usaban archivos secuenciales administrados con tablas de índices. Esa funcionalidad que describes estaba implementada a nivel de la interfase y no en el kernel.
Desde entonces hasta ahora el salto fue enorme y los conceptos cambiaron completamente.
Una de las cosas que cambió fue precisamente independizar el núcleo de la base de datos, respecto de las interfases que la usan. Por ello nunca pueden existir "punteros" en el sentido de lo que tu estás describiendo. Esos punteros se implementan ahora en las interfases. Si bien en un sentido estricto los punteros siguen existiendo de alguna forma, no son ya los que tu usabas, ni tampoco son accesibles (los índices primarios y agrupados contienen punteros, por ejemplo), sino que se usan a través de nuevas capacidades.
Puesto así tienes como solución resolver el tema en las interfases, o bien empaparte mejor del modelo relacional para tratar de manejarte con un paradigma neuvo que, a pesar de resultarte extraño, es muy superior y muchísimo más eficiente y preciso que lo que era el que usaban los dBase.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 11/09/2009, 15:07
Avatar de PacoRuiz  
Fecha de Ingreso: abril-2009
Mensajes: 254
Antigüedad: 15 años
Puntos: 3
Respuesta: acceso a la base de datos

Por lo que he leído parece que los cursores son una especie de filtros, no de punteros, no sé si lo estoy entendiendo mal.

En cuanto a las interfases, no sé cómo resolver el tema en las interfases, la respuesta es muy teórica, no sé cómo hacerlo.
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 07:03.