Let's start with the data model. So, how does this work? As far as I understood the overview one has to start a project and define the data model first.
> What I think we should start with the data model. Currently, we have > these tables: > > I think most parts are self-explaning when one goes through the Web > forms of the current Soctware Index. > > Screenshots are not stored as BLOBs but in files on the server. And, > we never store binaries but only links to sources and homepages. Unfortunately the attachment was lost. Here it is inlined: # phpMyAdmin SQL Dump # version 2.5.6 # http://www.phpmyadmin.net # # Host: mysql.gnustep.org # Erstellungszeit: 16. Februar 2010 um 13:24 # Server Version: 4.0.20 # PHP-Version: 4.3.8 # # Datenbank: `gnustep` # # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs` # CREATE TABLE `swi_gs` ( `id` int(11) NOT NULL auto_increment, `name` text NOT NULL, `license` text NOT NULL, `summary` text NOT NULL, `description` text NOT NULL, `downloadurl` text NOT NULL, `version` text NOT NULL, `homepageurl` text NOT NULL, `sourceurl` text NOT NULL, `updated` datetime default '0000-00-00 00:00:00', `approved` tinyint(4) NOT NULL default '0', `price` decimal(10,2) NOT NULL default '0.00', `views` bigint(11) NOT NULL default '0', `added` datetime NOT NULL default '0000-00-00 00:00:00', `author` text NOT NULL, `rom` text NOT NULL, `model` text NOT NULL, `category1` text NOT NULL, `category2` text NOT NULL, `category3` text NOT NULL, `category4` text NOT NULL, `screen0` tinyint(4) NOT NULL default '0', `screen1` tinyint(4) NOT NULL default '0', `screen2` tinyint(4) NOT NULL default '0', `screen3` tinyint(4) NOT NULL default '0', `screen4` tinyint(4) NOT NULL default '0', `creator` text NOT NULL, `maturity` text NOT NULL, `feedurl` text NOT NULL, `replacedby` int(11) NOT NULL default '0', PRIMARY KEY (`id`), FULLTEXT KEY `fulltext` (`name`,`summary`,`description`,`author`) ) TYPE=MyISAM AUTO_INCREMENT=108 ; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_appcategory` # CREATE TABLE `swi_gs_appcategory` ( `catid` int(11) NOT NULL default '0', `appid` int(11) NOT NULL default '0', `number` tinyint(4) NOT NULL default '0', UNIQUE KEY `appid` (`appid`,`number`) ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_categories` # CREATE TABLE `swi_gs_categories` ( `id` int(4) NOT NULL default '0', `category` text NOT NULL, PRIMARY KEY (`id`) ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_changerequest` # CREATE TABLE `swi_gs_changerequest` ( `number` bigint(20) NOT NULL default '0', `when` datetime NOT NULL default '0000-00-00 00:00:00', `appid` int(11) NOT NULL default '0', `field` text NOT NULL, `newvalue` text NOT NULL, `requestor` text NOT NULL, `reason` text NOT NULL ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_comment` # CREATE TABLE `swi_gs_comment` ( `appid` int(11) NOT NULL default '0', `version` text NOT NULL, `from` text NOT NULL, `subject` text NOT NULL, `body` text NOT NULL, `date` datetime NOT NULL default '0000-00-00 00:00:00' ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_subscription` # CREATE TABLE `swi_gs_subscription` ( `appid` int(11) NOT NULL default '0', `email` varchar(255) NOT NULL default '', PRIMARY KEY (`appid`,`email`) ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_temp` # CREATE TABLE `swi_gs_temp` ( `category1` varchar(50) default NULL ) TYPE=HEAP; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_users` # CREATE TABLE `swi_gs_users` ( `email` varchar(255) NOT NULL default '', `password` text NOT NULL, `registered` datetime NOT NULL default '0000-00-00 00:00:00', `enabled` tinyint(4) NOT NULL default '0', `permissions` text NOT NULL, PRIMARY KEY (`email`) ) TYPE=MyISAM; # -------------------------------------------------------- # # Tabellenstruktur f¸r Tabelle `swi_gs_visitors` # CREATE TABLE `swi_gs_visitors` ( `appid` int(11) NOT NULL default '0', `when` datetime NOT NULL default '0000-00-00 00:00:00', `IP` text NOT NULL ) TYPE=MyISAM; _______________________________________________ Discuss-gnustep mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnustep
