Foros del Web » Programando para Internet » PHP »

Problemas Al Actualizar Y Borrar

Estas en el tema de Problemas Al Actualizar Y Borrar en el foro de PHP en Foros del Web. HOLA he conseguido hacer una consulta inner join bien Código PHP: //Sentencia sql $_pagi_sql  =  "SELECT * FROM ( bdlegal_datos INNER JOIN bdlegal_categorias, bdlegal_normas, bdlegal_vigencia ON bdlegal_datos.categoria = bdlegal_categorias.id AND bdlegal_datos.norma = bdlegal_normas.id AND bdlegal_datos.vigencia = bdlegal_vigencia.id) WHERE bdlegal_datos.id ='$id'" ;  ...
  #1 (permalink)  
Antiguo 30/06/2004, 11:49
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 14 años, 5 meses
Puntos: 0
Problemas Al Actualizar Y Borrar

HOLA he conseguido hacer una consulta inner join bien

Código PHP:

//Sentencia sql
$_pagi_sql "SELECT * FROM (
bdlegal_datos
INNER JOIN
bdlegal_categorias,
bdlegal_normas,
bdlegal_vigencia
ON bdlegal_datos.categoria = bdlegal_categorias.id
AND bdlegal_datos.norma = bdlegal_normas.id
AND bdlegal_datos.vigencia = bdlegal_vigencia.id)
WHERE bdlegal_datos.id ='$id'"

pero como hago en caso de actualizar con PHP que se modifiquen las tablas

bdlegal_categorias, bdlegal_normas, bdlegal_vigencia

y tambien si borro un registro tiene que borrar datos de las anteriores tablas


mi base es mysql
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #2 (permalink)  
Antiguo 01/07/2004, 07:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Lamentablemente en Mysql (hasta la versión 4.1 si mal no recuerdo) no hay soporte de "integridad referencial" como para poder hacer un borrado de un registro en cascada (borrando la rama completa de dependencias de este).

Desde PHP tendras que hacer consultas para ir obteniendo a que tabla/registro pertenece su "clave foránea" (dependencia). y así borrar tus registros

Un saludo,
  #3 (permalink)  
Antiguo 01/07/2004, 09:12
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 14 años, 5 meses
Puntos: 0
ok

OK Cluster gracias por responder.

actualmente poseeo en mi server MySQL 4.0.15, esta base viene con el mandrake linux 9.2, y para obtener integridad referencial tengo que comprar una versión diferente a mi versión?
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #4 (permalink)  
Antiguo 01/07/2004, 10:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
mm Bueno .. cuando uno diseña una aplicación .. igual que elige el lenguaje que necesita (por las características de los requerimientos de la aplicación) .. también hay que dedicarle tiempo a ver que Base de datos te vienen mejor por los requerimientos de tu aplicación y .. como es este caso de "funcionalidades" de la misma.

Mysql puede trabajar con algo de "integridad referencial" si usas tablas tipo InnoDB (en lugar de las "por defecto": MyISAM) .. El soporte completo de "Integridad referencial" está -previsto- para versiones de Msyql 4.1.x en adelante que todavía están en fase de desarrollo (pero puedes bajarlas para ir probando ...).

Toda esa información la tienes en la web oficial de Mysql:
www.mysql.com
Y en artículos de:
www.mysql-hispano.com

Por lo demás .. si requieres de esas funcionalidades para tu modelo de datos y aplicación (y otras más que tal vez hechas en falta como "store procedure" .. "triggers" .. etc) Podrías usar otras "base de datos" RDBM como por ejemplo (dentro den mundo "GNU/GPL gratuito"): PostgreSQL (www.postgresql.com), Interbase .. y algunas más.

Un saludo,
  #5 (permalink)  
Antiguo 03/07/2004, 17:00
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 14 años, 5 meses
Puntos: 0
mira esto

mira esto Cluster http://www.programacion.com/bbdd/tut...referencial/1/
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #6 (permalink)  
Antiguo 03/07/2004, 17:22
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 14 años, 5 meses
Puntos: 0
leyendo...

Aqui hay un tutorial

http://www.programacion.com/bbdd/tut...l_referencial/
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #7 (permalink)  
Antiguo 05/07/2004, 09:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Ya te hice el comentario que con tablas tipo InnoDB podias hacerlo, ..Es decir .. respetar la integridad referencial de forma controlada y automática por parte de Mysql.

Cita:
Mysql puede trabajar con algo de "integridad referencial" si usas tablas tipo InnoDB (en lugar de las "por defecto": MyISAM) ..
El soporte completo de Integridad referencial para todo tipo de tablas (MyISAM y otras) está previsto para Mysql 4.1.x en adelante.

Lo principal es que sepas las virtudes o desventajas que pueda tener el hecho de trabajar con tablas InnoDB (y eso mejor te lo aclaran en el foro de Base de datos).

Un saludo,
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 16:36.