[Php-avanzado] Consulta para Leo

Silverzero silverzero.52 en gmail.com
Lun Nov 9 19:12:19 ARST 2009


Hola Leo,

Acá vá:

-- phpMyAdmin SQL Dump
-- version 2.11.9.5
-- http://www.phpmyadmin.net
--
-- Servidor: localhost
-- Tiempo de generación: 09-11-2009 a las 19:10:53
-- Versión del servidor: 5.0.81
-- Versión de PHP: 5.2.9

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Base de datos: `salimas_sitio`
--

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `actividades`
--

CREATE TABLE IF NOT EXISTS `actividades` (
  `id` int(11) NOT NULL auto_increment,
  `fecha` date NOT NULL,
  `desde` date NOT NULL,
  `hasta` date NOT NULL,
  `horario` varchar(50) collate utf8_unicode_ci NOT NULL,
  `titulo` varchar(50) collate utf8_unicode_ci NOT NULL,
  `descripcion` text collate utf8_unicode_ci NOT NULL,
  `imagen` varchar(50) collate utf8_unicode_ci NOT NULL,
  `url` varchar(50) collate utf8_unicode_ci NOT NULL,
  `precio` varchar(50) collate utf8_unicode_ci NOT NULL,
  `id_visitante` int(11) NOT NULL,
  `id_lugar` int(11) NOT NULL,
  `id_stat` int(2) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=2 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `actividades_cat`
--

CREATE TABLE IF NOT EXISTS `actividades_cat` (
  `id` int(11) NOT NULL auto_increment,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=13 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `actividades_raices`
--

CREATE TABLE IF NOT EXISTS `actividades_raices` (
  `id` int(11) NOT NULL auto_increment,
  `id_act` int(11) NOT NULL,
  `id_subcat` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `actividades_subcat`
--

CREATE TABLE IF NOT EXISTS `actividades_subcat` (
  `id` int(11) NOT NULL auto_increment,
  `id_actividad_cat` int(11) NOT NULL,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=123 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `diccionario`
--

CREATE TABLE IF NOT EXISTS `diccionario` (
  `id` int(11) NOT NULL auto_increment,
  `frase` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=38 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `eventos`
--

CREATE TABLE IF NOT EXISTS `eventos` (
  `id` int(11) NOT NULL auto_increment,
  `fecha` date NOT NULL,
  `desde` date NOT NULL,
  `hasta` date NOT NULL,
  `horario` varchar(50) collate utf8_unicode_ci NOT NULL,
  `titulo` varchar(50) collate utf8_unicode_ci NOT NULL,
  `descripcion` text collate utf8_unicode_ci NOT NULL,
  `imagen` varchar(50) collate utf8_unicode_ci NOT NULL,
  `url` varchar(100) collate utf8_unicode_ci NOT NULL,
  `precio` varchar(50) collate utf8_unicode_ci NOT NULL,
  `id_visitante` int(11) NOT NULL,
  `id_lugar` int(11) NOT NULL,
  `id_stat` int(2) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=4 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `eventos_cat`
--

CREATE TABLE IF NOT EXISTS `eventos_cat` (
  `id` int(11) NOT NULL auto_increment,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=15 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `eventos_raices`
--

CREATE TABLE IF NOT EXISTS `eventos_raices` (
  `id` int(11) NOT NULL auto_increment,
  `id_evento` int(11) NOT NULL,
  `id_subcat` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `eventos_subcat`
--

CREATE TABLE IF NOT EXISTS `eventos_subcat` (
  `id` int(11) NOT NULL auto_increment,
  `id_evento_cat` int(11) NOT NULL,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=123 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `localidades`
--

CREATE TABLE IF NOT EXISTS `localidades` (
  `cod_loc` int(4) NOT NULL auto_increment,
  `cod_prov` int(2) NOT NULL,
  `desc` varchar(31) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`cod_loc`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=2383 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `lugares`
--

CREATE TABLE IF NOT EXISTS `lugares` (
  `id` int(11) NOT NULL auto_increment,
  `fecha` date NOT NULL,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  `direccion` varchar(50) collate utf8_unicode_ci NOT NULL,
  `telefono` varchar(50) collate utf8_unicode_ci NOT NULL,
  `email` varchar(50) collate utf8_unicode_ci NOT NULL,
  `horario` varchar(50) collate utf8_unicode_ci NOT NULL,
  `precio` varchar(50) collate utf8_unicode_ci NOT NULL,
  `descripcion` text collate utf8_unicode_ci NOT NULL,
  `imagen` varchar(50) collate utf8_unicode_ci NOT NULL,
  `url` varchar(50) collate utf8_unicode_ci NOT NULL,
  `id_visitante` int(11) NOT NULL,
  `cod_loc` int(4) NOT NULL,
  `id_stat` int(2) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=11 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `lugares_cat`
--

CREATE TABLE IF NOT EXISTS `lugares_cat` (
  `id` int(11) NOT NULL auto_increment,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=16 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `lugares_raices`
--

CREATE TABLE IF NOT EXISTS `lugares_raices` (
  `id` int(11) NOT NULL auto_increment,
  `id_lug` int(11) NOT NULL,
  `id_subcat` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `lugares_subcat`
--

CREATE TABLE IF NOT EXISTS `lugares_subcat` (
  `id` int(11) NOT NULL auto_increment,
  `id_lugar_cat` int(11) NOT NULL,
  `nombre` varchar(50) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `provincias`
--

CREATE TABLE IF NOT EXISTS `provincias` (
  `cod_prov` int(2) NOT NULL,
  `desc` varchar(30) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`cod_prov`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `status`
--

CREATE TABLE IF NOT EXISTS `status` (
  `id` int(11) NOT NULL,
  `stat` varchar(10) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `visitantes`
--

CREATE TABLE IF NOT EXISTS `visitantes` (
  `id` int(11) NOT NULL auto_increment,
  `fecha` date NOT NULL,
  `nombres` varchar(50) collate utf8_unicode_ci NOT NULL,
  `apellidos` varchar(50) collate utf8_unicode_ci NOT NULL,
  `alias` varchar(50) collate utf8_unicode_ci NOT NULL,
  `email` varchar(50) collate utf8_unicode_ci NOT NULL,
  `pass` varchar(50) collate utf8_unicode_ci NOT NULL,
  `avatar` varchar(50) collate utf8_unicode_ci NOT NULL,
  `ocupacion` varchar(50) collate utf8_unicode_ci NOT NULL,
  `about` text collate utf8_unicode_ci NOT NULL,
  `intereses` text collate utf8_unicode_ci NOT NULL,
  `url` varchar(50) collate utf8_unicode_ci NOT NULL,
  `id_stat` int(2) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENT=3 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `votos_actividades`
--

CREATE TABLE IF NOT EXISTS `votos_actividades` (
  `id` int(11) NOT NULL,
  `votos` int(11) NOT NULL default '0',
  `puntaje` int(11) NOT NULL default '0',
  `id_actividad` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `votos_eventos`
--

CREATE TABLE IF NOT EXISTS `votos_eventos` (
  `id` int(11) NOT NULL,
  `votos` int(11) NOT NULL default '0',
  `puntaje` int(11) NOT NULL default '0',
  `id_evento` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `votos_lugares`
--

CREATE TABLE IF NOT EXISTS `votos_lugares` (
  `id` int(11) NOT NULL,
  `votos` int(11) NOT NULL default '0',
  `puntaje` int(11) NOT NULL default '0',
  `id_lugar` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

¡Gracias!
¡Saludos!

2009/11/9 Leonardo Tadei - Pegasus Tech Supply <leonardot en pegasusnet.com.ar>

> Hola Carolina,
>
>        por favor, enviame _todas_ las tablas, porque como ya sabés, la
> normalización es un tema que debe ser evaluado en un contexto y como un
> todo...
>
>
> El lun, 09-11-2009 a las 00:00 -0300, Silverzero escribió:
> > Creo que la tabla que falta sería:
> >
> > eventos_catsubcat:
> >
> > id
> > id_evento
> > id_subcat
> >
> > y a la categoría que no tiene subcategorias le hago una con el mismo
> > nombre, como me dijiste.
> > Está bien así?
> >
> > Saludos.
> >
> > 2009/11/6 Silverzero <silverzero.52 en gmail.com>
> >
> >
> >         2009/11/5 Leonardo Tadei - Pegasus Tech Supply
> >         <leonardot en pegasusnet.com.ar>
> >
> >                 Hola Carolina!
> >
> >
> >                        estuve revisando tu SRS (porque no me acordaba
> >                 algunos detalles).
> >                        Necesito que me reenvíes las tablas
> >                 normalizadas que tengas para
> >                 revisarlo, porque recordaba una relación uno a uno
> >                 entre subcategorías y
> >                 eventos, pero tu SRS dice claramente múltiples así que
> >                 será muchos a
> >                 muchos... es decir que de las 3 tablas que me
> >                 enviaste, hace falta otra
> >                 más para la relación.
> >
> >
> >
> >         Aca te mando la de eventos, que para actividades y lugares va
> >         a ser lo mismo, asi que lo que me digas lo repito para el
> >         resto. Si me pudieras explicar como funcionaría la relación
> >         con la tabla que falta, te lo re agradezco.
> >
> >
> >         CREATE TABLE IF NOT EXISTS `eventos` ( `id` int(11) NOT NULL
> >         auto_increment, `fecha` date NOT NULL, `desde` date NOT NULL,
> >         `hasta` date NOT NULL, `horario` varchar(50) collate
> >         utf8_unicode_ci NOT NULL, `titulo` varchar(50) collate
> >         utf8_unicode_ci NOT NULL, `descripcion` text collate
> >         utf8_unicode_ci NOT NULL, `imagen` varchar(50) collate
> >         utf8_unicode_ci NOT NULL, `url` varchar(100) collate
> >         utf8_unicode_ci NOT NULL, `precio` varchar(50) collate
> >         utf8_unicode_ci NOT NULL, `id_visitante` int(11) NOT NULL,
> >         `id_lugar` int(11) NOT NULL, `id_stat` int(2) NOT NULL,
> >         PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8
> >         COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;
> >
> >
> >         CREATE TABLE IF NOT EXISTS `eventos_cat` ( `id` int(11) NOT
> >         NULL auto_increment, `nombre` varchar(50) collate
> >         utf8_unicode_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM
> >         DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
> >         AUTO_INCREMENT=15 ;
> >
> >
> >         CREATE TABLE IF NOT EXISTS `eventos_subcat` ( `id` int(11) NOT
> >         NULL auto_increment, `id_evento_cat` int(11) NOT NULL,
> >         `nombre` varchar(50) collate utf8_unicode_ci NOT NULL, PRIMARY
> >         KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8
> >         COLLATE=utf8_unicode_ci AUTO_INCREMENT=123 ;
> >
> >
> >
> >
> >
> >                 El jue, 05-11-2009 a las 10:50 -0300, Silverzero
> >                 escribió:
> >                 > Estuve haciendo búsqueda y encontré que cuando
> >                 necesitás guardar una
> >                 > serie de cantidad de datos que no sabes cuantos va a
> >                 elegir el
> >                 > usuario, lo conveniente es (segun algunos) guardar
> >                 estos datos en un
> >                 > array haciendo implode/explode o
> >                 serialize/unserialize, pero entra en
> >                 > debate la normalización.
> >
> >
> >                        Por supuesto! Además con este modelo son
> >                 ineficientes las consultas, y
> >                 después tenés que gastar todavía más procesamiento en
> >                 dividir lo que
> >                 tengas guardado.
> >                        No parece nada conveniente... al menos no le
> >                 encuentro ninguna ventaja
> >                 y sí muchas desventajas.
> >
> >                 > Porque yo no sé en cuales/cuantas categorías el
> >                 visitante va a
> >                 > publicar un evento, y menos cuantas subcategorías.
> >
> >
> >                        Pero no importa si plnateás una relación muchos
> >                 a muchos, que mapea
> >                 justamente eso.
> >
> >                 >  Y por lo que veo, por más que no sean propiamente
> >                 TAGS, creo que en
> >                 > este caso se comportarían de una manera similar...
> >                 >
> >                 > Acá encontré un artículo de como aplicar estructuras
> >                 para folksonomías
> >                 > en mysql.
> >                 > http://forge.mysql.com/wiki/TagSchema
> >
> >
> >                        Sí, pero fijate que la discusión va mostrando
> >                 implementaciones malas, y
> >                 las va corrigiendo hasta que termina en 33F que está
> >                 ilustrada bajo
> >                 "Recommended Architecture" !!!
> >                        Tu SRS no implica nada que tenga que ver con la
> >                 "dimensión del usuario"
> >                 del artículo, ya que vos tenés una correspondencia
> >                 entre el usuario y
> >                 sus eventos y lugares.
> >
> >                        Seguimos!
> >
> >
> >
> >                 PD: yo te avisé que esta tesis era demasiado
> >                 grande... :(
> >
> >
> >         No pasa nada, de última veo qué le saco que no sea
> >         totaaaaaalmente escencial, tal vez lo de las votaciones por
> >         ejemplo. Se lo agrego yo después si no llego para el plazo de
> >         la entrega.
> >
> >
> >         Gracias por tu tiempo Leo.
> >
> >
> >         Saludos!
> >
> >
> >         Carolina.
> >
> >
> >                 --
> >
> >
> >                 Leonardo Tadei
> >                 leonardot en pegasusnet.com.ar
> >                 http://blog.pegasusnet.com.ar
> >                 Firma pública:
> >                 http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> >
> >                 _______________________________________________
> >                 Php-avanzado mailing list
> >                 Php-avanzado en pato2.fi.mdp.edu.ar
> >
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >
> >
> >
> >
> > --
> > Carolina Derromediz
> > Cel. +54 223 5301599
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> --
>
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>



-- 
Carolina Derromediz
Cel. +54 223 5301599
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://www3.fi.mdp.edu.ar/cgi-bin/mailman/private/php-avanzado/attachments/20091109/f2e0d63c/attachment-0001.htm 


Más información sobre la lista de distribución Php-avanzado