Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
il_modello_generale [02/08/2010 15:22] |
il_modello_generale [05/06/2013 17:08] (versione attuale) |
||
|---|---|---|---|
| Linea 6: | Linea 6: | ||
| in ogni schema vengono riportate solo le chiavi primarie e gli attributi più utili nell'identificare le relazioni tra le entità.\\ | 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.\\ | 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 di | 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_er.jpg|}} | + | {{:generale_er2.jpg|}} |
| ---- | ---- | ||
| + | \\ | ||
| SQL delle tabelle: | 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]] | ||