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

Trabajar con tablas vinculadas

Estas en el tema de Trabajar con tablas vinculadas en el foro de Bases de Datos General en Foros del Web. Hola, estoy dando mis primeros pasos con PHP y Mysql. Necesitaria saber como trabajar con tablas vinculadas. Estoy haciendo una pagina que necesita actualizar noticias ...
  #1 (permalink)  
Antiguo 12/11/2004, 18:42
 
Fecha de Ingreso: noviembre-2004
Ubicación: La Plata
Mensajes: 2
Antigüedad: 20 años
Puntos: 0
Pregunta Trabajar con tablas vinculadas

Hola, estoy dando mis primeros pasos con PHP y Mysql. Necesitaria saber como trabajar con tablas vinculadas. Estoy haciendo una pagina que necesita actualizar noticias en la tapa a medida que queramos nosotros (y no por el orden de la tabla y tampoco por fecha). Tambien quiero que esas noticias se muestren en formatos diferentes, las noticias irian en un formato de tabla como la de los titulares de los diarios (por ejemplo, la de lanacion.com.ar con las ultimas noticias). Por lo tanto plantee una tabla donde guardo la noticia y que tiene los siguientes campos:

id_noticia (smallint (5) UNSIGNED auto_increment),
titulo (varchar 50),
volanta (varchar 30),
copete (mediumtext)
, (introduccion a la noticia)
noticia (longtext), (nota entera para usar en otra pagina)
urlfoto (varchar 30),
tipoformato (enum),
fecha de publicacion (date),
urlnoticia(varchar 50)

(las marcadas en azul son las que necesitaria en la pagina principal)

ademas cree una tabla formnoticias donde tengo los campos:

id_formato (TYNINT (2) UNSIGNED ZEROFILL auto_increment),
formato (mediumtext),
tipoformato (enum).

Como la cantidad de noticias de la pagina principal tiene que variar y tienen que ser seleccionada manualmente, pense en ayudarme con una tabla auxiliar donde guarde
el id o el titulo de la noticia que quiera colocar (al consultar la noticia tendria tambien el tipo de formato). Las noticias de tapa nunca van a ser mas de seis o siete como mucho.
De esta forma podria variar la noticia y poner un tipo de formato para cada noticia.

1) Ahora, no se como relacionar las tablas para que esto me funcione, tampoco si tengo que habilitar algo en PhpmyAdmin para trabajar con tablas vinculadas (porque intente hacerlo no pude) y si cuando despues la suba no voy a tener problemas para trabajarlas con el servidor.
Tampoco se si es la mejor manera de hacerlo, por ahi podria guardar el formato de la noticia en un archivo y usarlo mediante include, guardando la direccion del archivo en la tabla de noticias. En ese caso, tendria que recorrer la tabla auxiliar mediante un for, no?.

Lei en alguna de las consultas algo de indexar algunos campos de la tabla para realizar una busqueda mas rapida.

Agradecere toda ayuda que puedan brindarme, y quiero dejar claro que todo lo que se de diseño web (que no es mucho) lo aprendi gracias a excelentes sitios como Maestros del web y Desarrolloweb, y a todos los que de alguna forma participan en ellos, con sus errores y sus aciertos.
Tambien si a alguien se le ocurre una forma mejor de realizar esto.

Desde ya muchas gracias

Franco
  #2 (permalink)  
Antiguo 13/11/2004, 16:25
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Te recomiendo estos tutoriales sobre Mysql ...

www.mysql-hispano.com

Ahí veras uno principalmente sobre "Normaliaciòn de Base de datos con Mysql" (no es el nombre del título del artículo pero trata de eso). También otros interesantes sobre creaciòn de indices, diseño de BD .. optimizaciòn de indices .. En general todos son de lectura recomendada si vas a trabajar con Mysql.

Mysql es muy particular .. depende de la versiòn de Mysql que uses, en principio no puedes crear "claves foràneas" y respetar la integridad referencial de forma directa sobre SQL (salvo que uses tablas tipo InnodB o Mysql 4.1.0 o superior .. pero creo que ahì tampoco funciona con tablas standars tipo MyISAM)

Sobre todo como veras .. esto no es un tema directo de PHP sino de Mysql (de Base de datos) y de como funcionan para el caso particular de Mysql ... (por eso moví tu preguna al foro de BD).

En cuanto a lo que comentas de:
Cita:
Como la cantidad de noticias de la pagina principal tiene que variar y tienen que ser seleccionada manualmente, pense en ayudarme con una tabla auxiliar donde guarde
Se puede tratar de muchas formas el tema y solventarlo de vàrias formas. Puedes hacer lo que comentas de tener una tabla extra y mover ID's de tus noticias cada vez que quitas o añades una noticia para mostrarla en tal sitio ..pero, tambièn podrías tener un simple campo tipo "flag" que indica "1": se mostrarà en el indice. "0" no se muestra en el indice .. y simplemente filtrar: consulta SQL condicional .. WHERE ver='1' o ver='0'


Un saludo,
  #3 (permalink)  
Antiguo 13/11/2004, 16:34
 
Fecha de Ingreso: noviembre-2004
Ubicación: La Plata
Mensajes: 2
Antigüedad: 20 años
Puntos: 0
Gracias, voy a leer los manuales que me recomendaste.

Franco
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 23:31.