WzCzW/Disseny tècnic/db-alt1-SQL
De GERMINADOR wiki
< PLANTER <Disseny interacció < Disseny tècnic < Variant alt-1 base dades
de sistemes i projectes de creació col·lectiva en xarxa.
- m.Lloc on hi ha les plantes nades, on es crien les plantes petites, destinades a ésser trasplantades; les mateixes plantes. (Diccionari IEC).
Disseny tècnic: Base de dades, codi SQL (variant alternativa-1)
Codi SQL de la proposta alt-1 de base de dades per Wikipool 0.1.0 :
-- MySQL -- -- Host: localhost Database: wikipool -- ------------------------------------------------------ -- Server version -- Wikipool database version alt1-2007_11_20 -- Table structure for table `contents` -- DROP TABLE IF EXISTS `contents`; CREATE TABLE `contents` ( `id` int(11) unsigned NOT NULL auto_increment, `coordenates` varchar(255) NOT NULL, `size` varchar(255) NOT NULL, `data` mediumtext character set utf8 collate utf8_unicode_ci NOT NULL, `css` varchar(255) NOT NULL, `content_type` int(11) unsigned NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; -- -- Table structure for table `snips` -- Registre dels retalls DROP TABLE IF EXISTS `snips`; CREATE TABLE `snips` ( `id` int(11) unsigned NOT NULL auto_increment, `coordenates` varchar(255) NOT NULL, `css` varchar(255) NOT NULL, `status` bool NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; -- -- Table structure for table `contents2snips` -- Relaciona continguts amb retalls DROP TABLE IF EXISTS `contents2snips`; CREATE TABLE `contents2snips` ( `content_id` int(11) unsigned NOT NULL, `snip_id` int(11) unsigned NOT NULL, `age` timestamp (14) NOT NULL, KEY `snip_id` (`snip_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Table structure for table `contents2snips_old` -- Historial DROP TABLE IF EXISTS `contents2snips_old`; CREATE TABLE `contents2snips_old` ( `content_id` int(11) unsigned NOT NULL, `snip_id` int(11) unsigned NOT NULL, `from` timestamp (14) NOT NULL, `until` timestamp (14) NOT NULL, KEY `snip_id` (`snip_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Table structure for table `pos2snips_old` -- Historial DROP TABLE IF EXISTS `pos2snips_old`; CREATE TABLE `pos2snips_old` ( `snip_id` int(11) unsigned NOT NULL, `coordenates` varchar(255) NOT NULL, `from` timestamp (14) NOT NULL, `until` timestamp (14) NOT NULL, KEY `snip_id` (`snip_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Table structure for table `snips2pool` -- DROP TABLE IF EXISTS `snips2pool`; CREATE TABLE `snips2pool` ( `snip_id` int(11) unsigned NOT NULL, `pool_id` int(11) unsigned NOT NULL, KEY `pool_id` (`pool_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Table structure for table `contents_type` -- DROP TABLE IF EXISTS `contents_type`; CREATE TABLE `contents_type` ( `id` int(11) unsigned NOT NULL auto_increment, `name` varchar(20) collate utf8_unicode_ci NOT NULL, `comments` varchar(100) collate utf8_unicode_ci NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; -- -- Table structure for table `pool` -- DROP TABLE IF EXISTS `pool`; CREATE TABLE `pool` ( `id` int(11) unsigned NOT NULL auto_increment, `name` varchar(255) NOT NULL, `created_by` int(11) unsigned NOT NULL, `date_creation` timestamp (14) NOT NULL, `last_change` timestamp (14) NULL, `date_start` timestamp (14) NOT NULL COMMENT 'data-hora inici sessió, per defecte seria la mateixa que la data de creació però pot ser diferent si el que es vol és fer una convocatòria de sessió', `date_stop` timestamp (14) NOT NULL COMMENT 'data-hora de tancament de la pool per si es vol fer una sessió que duri un temps determinat i es tanqui automaticament', `group_permissions` varchar(255) NOT NULL COMMENT 'permissos per veure o editar segons tipus de usuari', `publicview` bool NOT NULL COMMENT 'si la sessió de wikipool serà o no visible en portada', `size` varchar(100) NOT NULL COMMENT 'mida de la pool en píxels', `css` text NOT NULL, `maxsnips` int(4) NOT NULL COMMENT 'nombre maxim de retalls, negatiu es que no hi ha límit', `status` bool NOT NULL COMMENT 'si la sessio esta oberta/editable (1) o tancada (0). En realitat ho podem saber per date_stop i també es pot regular per group_permisions pero aquest es un camp boolea facil i rapid de consultar, encara que sigui redundant', KEY `id` (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; -- -- Table structure for table `stats_events` -- DROP TABLE IF EXISTS `stats_events`; CREATE TABLE `stats_events` ( `id` int(11) NOT NULL auto_increment, `date` date NOT NULL, `pool_id` int(11) NOT NULL, `content_id` int(11) NOT NULL, `content_type` int(11) NOT NULL, `event_kind` int(11) NOT NULL COMMENT 'com ara: moviment, resize, etc...', `event_data` varchar(255) collate latin1_general_cs NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; -- -- Table structure for table `users` -- DROP TABLE IF EXISTS `users`; CREATE TABLE `users` ( `id` int(11) unsigned NOT NULL auto_increment, `username` varchar(255) collate utf8_unicode_ci NOT NULL, `comment` mediumtext collate utf8_unicode_ci NOT NULL, `passw` varchar(255) collate utf8_unicode_ci NOT NULL, `usergroup` int(11) unsigned NULL COMMENT 'grup al que pertany usuari, correspon a id taula Usergroups', KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; -- -- Table structure for table `usergroups` -- DROP TABLE IF EXISTS `usergroups`; CREATE TABLE `usergroups` ( `group_id` int(11) unsigned NOT NULL auto_increment, `groupname` varchar(255) collate utf8_unicode_ci NOT NULL, `comment` mediumtext collate utf8_unicode_ci NULL, KEY `group_id` (`group_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

