CREATE DATABASE ellinika; use ellinika CREATE TABLE pos( id bigint not null, # REL 0 name char(64) not null, abbr char(12) not null, abbr_lat char(12) not null, canonical enum('Y','N') not null default 'Y', INDEX(id), INDEX(abbr) ); INSERT INTO pos VALUES(0, "άρθρο", "άρθρ.", "art", 'Y'); INSERT INTO pos VALUES(conv("100",16,10), "ουσιαστικό", "ουσ.", "subst", 'Y'); INSERT INTO pos VALUES(conv("101",16,10), "αρσενικό", "ο", "m", 'Y'); INSERT INTO pos VALUES(conv("102",16,10), "θηλυκό", "η", "f", 'Y'); INSERT INTO pos VALUES(conv("104",16,10), "ουδέτερο", "το", "n", 'Y'); INSERT INTO pos VALUES(conv("101",16,10)|2, "αρσενικό και θηλυκό", "ο/η", "m/f", 'N'); INSERT INTO pos VALUES(conv("101",16,10)|2, "αρσενικό και θηλυκό", "ο,η", "m,f", 'Y'); INSERT INTO pos VALUES(conv("101",16,10)|2|4,"αρσενικό,θηλυκό,ουδέτερο", "ο,η,το", "m,f,n", 'N'); INSERT INTO pos VALUES(conv("114",16,10), "πληθυντικό ουδέτερο", "τα", "pl.n", 'Y'); INSERT INTO pos VALUES(conv("200",16,10), "επίθετο", "επίθ.", "adj", 'Y'); INSERT INTO pos VALUES(conv("400",16,10), "επίρρημα", "επίρρ.", "adv", 'Y'); INSERT INTO pos VALUES(conv("800",16,10), "αριθμός", "αριθ.", "num", 'Y'); INSERT INTO pos VALUES(conv("1000",16,10), "αντωνυμία", "αντων.", "pron", 'Y'); INSERT INTO pos VALUES(conv("100000",16,10), "ρήμα", "ρήμα", "v", 'Y'); INSERT INTO pos VALUES(conv("110000",16,10), "μεταβατικό", "μετ.", "vt", 'Y'); INSERT INTO pos VALUES(conv("120000",16,10), "αμετάβατο", "αμετ.", "vi", 'Y'); INSERT INTO pos VALUES(conv("140000",16,10), "απρώσοπο", "απρώσ.", "vimp", 'Y'); INSERT INTO pos VALUES(conv("180000",16,10), "αποθετικό", "αποθ.", "vdep", 'Y'); INSERT INTO pos VALUES(conv("200000",16,10), "επιφώνημα", "επιφ.", "int", 'Y'); INSERT INTO pos VALUES(conv("400000",16,10), "μετοχή", "μετχ.", "part", 'Y'); INSERT INTO pos VALUES(conv("800000",16,10), "μόριο", "μόριο.", "ptc", 'Y'); INSERT INTO pos VALUES(conv("1000000",16,10), "πρόθεση", "πρόθ.", "prep", 'Y'); INSERT INTO pos VALUES(conv("2000000",16,10), "σύνδεσμος", "σύνδ.", "conj", 'Y'); CREATE TABLE dict( ident int(32), # REL 1,3 word varchar(128) binary, # REL 4 sound varchar(128) binary, pos int(4), # REL 0 forms blob, INDEX (ident), INDEX (word) ); CREATE TABLE articles( index int(32) not null auto_increment, # REL 5 ident int(32) not null, # REL 1 subindex int(32) not null, meaning blob, INDEX (ident), INDEX (subindex) ); CREATE TABLE reverse( ident int(32) not null auto_increment, word varchar(128) binary, article int(32) # REL 5 ); CREATE TABLE topic( ident int(32) not null auto_increment, # REL 2 title varchar(128) not null, type varchar(128), # Defines whether this is a topic or a # lesson reference or (maybe) something else UNIQUE (ident), INDEX (title) ); CREATE TABLE topic_tab ( topic_ident int(32) not null, # REL 2 word_ident int(32) not null, # REL 1 INDEX (topic_ident), INDEX (word_ident) ); CREATE TABLE links( type enum('XREF','ANT') not null, ident int(32) not null, # REL 1 xref int(32) not null, # REL 1 INDEX (ident), UNIQUE (ident,xref) ); CREATE TABLE stat( updated datetime not null, count int(32) not null ); CREATE TABLE pending_links( type enum('CLOSED','XREF','ANT') not null, originator int(32) not null, # REL 3 word varchar(128) binary, # REL 4 );