Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
il_modello_generale [06/08/2010 15:04] |
il_modello_generale [05/06/2013 17:08] |
||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ======Modello ER generale ====== | ||
- | \\ | ||
- | Il modello ER permette di capire la struttura delle tabelle che compongono gli strumenti di openDCN.\\ | ||
- | //Nota//:\\ | ||
- | in ogni schema vengono riportate solo le chiavi primarie e gli attributi più utili nell'identificare le relazioni tra le entità.\\ | ||
- | Di seguito al modello verranno riportati i codici SQL utilizzati per creare le tabelle all'interno del database del sistema.\\ | ||
- | \\ | ||
- | Le entità evidenziate in azzurro sono quelle principali/fondamentali; quelle evidenziate in verde (con il doppio bordo) rappresentano i sottoinsiemi degli strumenti [[l'agenda | agenda]], [[il meeting online | meeting]], [[la consultazione certificata | consultazione certificata]], [[la discussione informata | discussione informata]] e delle [[le risorse | risorse]].\\ | ||
- | Infine la tabella wiki_documents è evidenziata in rosso perchè rappresenta l'insieme delle tabelle ereditate dal sistema di wiki. | ||
- | \\ | ||
- | |||
- | {{:generale_er2.jpg|}} | ||
- | |||
- | ---- | ||
- | \\ | ||
- | SQL delle tabelle: | ||
- | \\ | ||
- | \\ | ||
- | **USERS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `users` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `username` varchar(255) NOT NULL default '', | ||
- | `password` varchar(36) NOT NULL default '', | ||
- | `first_name` varchar(255) default '', | ||
- | `last_name` varchar(255) default '', | ||
- | `email` varchar(255) NOT NULL default '', | ||
- | `showemail` tinyint(1) NOT NULL default '0', | ||
- | `admin` tinyint(1) NOT NULL default '0', | ||
- | `active` tinyint(1) NOT NULL default '0', | ||
- | `created` datetime default NULL, | ||
- | `modified` datetime default NULL, | ||
- | PRIMARY KEY (`id`), | ||
- | UNIQUE KEY `username` (`username`), | ||
- | UNIQUE KEY `email` (`email`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **GEOMAP** - Caratteristiche della mappa utilizzata e riferimento allo strumento che la utilizza. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `geomap` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `label` mediumtext collate utf8_unicode_ci, | ||
- | `boundingBox` geometry NOT NULL, | ||
- | `owner` mediumtext collate utf8_unicode_ci NOT NULL, | ||
- | `owner_id` int(11) NOT NULL, | ||
- | `maptype` mediumtext collate utf8_unicode_ci NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; | ||
- | |||
- | ---- | ||
- | \\ | ||
- | **GROUP USERS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `groups_users` ( | ||
- | `group_id` int(10) unsigned NOT NULL default '0', | ||
- | `user_id` int(10) unsigned NOT NULL default '0', | ||
- | PRIMARY KEY (`group_id`,`user_id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; | ||
- | \\ | ||
- | **GROUPS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `groups` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `name` varchar(45) collate latin1_general_ci NOT NULL default '', | ||
- | `description` text collate latin1_general_ci NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; | ||
- | \\ | ||
- | **RATING** - Contiene le votazioni fatte dagli utenti registrati e non. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `rating` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `owner` varchar(255) NOT NULL, | ||
- | `owner_id` int(11) NOT NULL, | ||
- | `agreement` int(11) default NULL, | ||
- | `relevance` int(11) default NULL, | ||
- | `user_id` int(11) NOT NULL, | ||
- | `anonymous_id` int(11) NOT NULL, | ||
- | `created` datetime NOT NULL, | ||
- | `modified` datetime NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **AVATARS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `avatars` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `user_id` int(11) default NULL, | ||
- | `size` int(11) default NULL, | ||
- | `type` varchar(255) default NULL, | ||
- | `width` int(11) default NULL, | ||
- | `height` int(11) default NULL, | ||
- | `created` datetime NOT NULL default '0000-00-00 00:00:00', | ||
- | `modified` datetime NOT NULL default '0000-00-00 00:00:00', | ||
- | PRIMARY KEY (`id`), | ||
- | KEY `user_id` (`user_id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **BLOCKSETS** - Caratteristiche del blockset che andrà a formare la struttura della pagina. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `blocksets` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `name` varchar(64) NOT NULL default '', | ||
- | `description` text character set latin1 collate latin1_general_ci NOT NULL, | ||
- | `template` varchar(32) NOT NULL default '', | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **PATHS** - Tabella che raccoglie l'indirizzo relativo ad ogni blockset. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `paths` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `name` varchar(255) NOT NULL default '', | ||
- | `blockset_id` int(10) unsigned NOT NULL default '0', | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **BLOCKSETS BLOCKS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `blocksets_blocks` ( | ||
- | `blockset_id` int(10) unsigned NOT NULL auto_increment, | ||
- | `area` varchar(32) NOT NULL default '', | ||
- | `weight` smallint(5) unsigned NOT NULL default '0', | ||
- | `block_id` int(10) unsigned NOT NULL default '0', | ||
- | PRIMARY KEY USING BTREE (`blockset_id`,`block_id`,`area`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **BLOCKS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `blocks` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `title` varchar(64) NOT NULL default '', | ||
- | `description` text character set latin1 collate latin1_general_ci NOT NULL, | ||
- | `owner` varchar(64) NOT NULL default '', | ||
- | `content_type` varchar(64) NOT NULL default '0', | ||
- | `content_id` int(10) unsigned NOT NULL default '0', | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **ROLES** - Nome e descrizione dei ruoli affidabili agli utenti. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `roles` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `owner` varchar(255) NOT NULL, | ||
- | `object` varchar(255) NOT NULL, | ||
- | `role` varchar(255) NOT NULL, | ||
- | `type` varchar(255) NOT NULL, | ||
- | `type_id` int(10) unsigned NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **MENU** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `menu` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `parent` int(11) NOT NULL default '0', | ||
- | `left` int(11) NOT NULL default '0', | ||
- | `right` int(11) NOT NULL default '0', | ||
- | `title` varchar(64) default NULL, | ||
- | `link` varchar(255) default NULL, | ||
- | `owner` varchar(64) default NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=utf8; | ||
- | \\ | ||
- | **PERMISSIONS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `permissions` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `owner` varchar(45) NOT NULL default '', | ||
- | `subject` varchar(45) NOT NULL default '', | ||
- | `action` varchar(45) NOT NULL default '', | ||
- | `object` varchar(45) NOT NULL default '', | ||
- | `weight` smallint(5) unsigned NOT NULL default '0', | ||
- | `grant` tinyint(1) unsigned NOT NULL default '0', | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **CONTENTS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `contents` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `title` text, | ||
- | `content` text, | ||
- | `visible` tinyint(4) NOT NULL default '0', | ||
- | `enable_html` tinyint(4) NOT NULL default '0', | ||
- | `strip_tags` tinyint(4) NOT NULL default '1', | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **WIKI DOCUMENTS** - Informazioni sui documenti inseriti nel wiki. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `wiki_documents` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `title` varchar(255) NOT NULL, | ||
- | `status` tinyint(3) unsigned NOT NULL, | ||
- | `tool` varchar(45) NOT NULL, | ||
- | `tool_id` int(10) unsigned NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **SUBSCRIBERS** - Tabella che racchiude gli utenti che hanno sottoscritto la notifica di messaggi. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `subscribers` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `owner` text NOT NULL, | ||
- | `subject` text NOT NULL, | ||
- | `action` text NOT NULL, | ||
- | `owner_id` text NOT NULL, | ||
- | `object` text NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **LOGS** - Tabella che registra i movimenti degli utenti. | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `logs` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `owner` varchar(45) NOT NULL, | ||
- | `subject` varchar(255) NOT NULL, | ||
- | `action` varchar(255) NOT NULL, | ||
- | `object` varchar(255) NOT NULL, | ||
- | `path` varchar(255) NOT NULL, | ||
- | `created` datetime NOT NULL, | ||
- | `message` text NOT NULL, | ||
- | `type` varchar(45) NOT NULL, | ||
- | `ip` varchar(45) NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **TEXTS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `texts` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `name` text NOT NULL, | ||
- | `text` text NOT NULL, | ||
- | `date_creation` datetime NOT NULL, | ||
- | `date_modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, | ||
- | `language` varchar(3) NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **TOKENS** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `tokens` ( | ||
- | `id` int(11) NOT NULL auto_increment, | ||
- | `token` char(32) character set utf8 collate utf8_unicode_ci NOT NULL, | ||
- | `user_id` int(11) NOT NULL, | ||
- | `expiration` int(10) unsigned NOT NULL, | ||
- | `created` datetime NOT NULL, | ||
- | `modified` datetime NOT NULL, | ||
- | PRIMARY KEY (`id`), | ||
- | UNIQUE KEY `user_id` (`user_id`), | ||
- | UNIQUE KEY `token` (`token`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | **VARIABLES** | ||
- | \\ | ||
- | CREATE TABLE IF NOT EXISTS `variables` ( | ||
- | `id` int(10) unsigned NOT NULL auto_increment, | ||
- | `owner` varchar(45) NOT NULL, | ||
- | `name` varchar(255) NOT NULL, | ||
- | `value` text NOT NULL, | ||
- | `type` varchar(45) NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
- | \\ | ||
- | \\ | ||
- | \\ | ||
- | \\ | ||
- | [[creare un nuovo strumento | indietro]] - [[l'agenda | avanti]] |