From 69ad59d59ab617036f4ba953a7442f10d00b6a77 Mon Sep 17 00:00:00 2001 From: tipaul Date: Thu, 30 May 2002 08:11:51 +0000 Subject: [PATCH] * modification of tables/row names : *_tag_* replaced by *_subfield_* where needed * modification of word table --- marc/marcschema.sql | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/marc/marcschema.sql b/marc/marcschema.sql index abb8ccd3ed..97ef91dc6a 100644 --- a/marc/marcschema.sql +++ b/marc/marcschema.sql @@ -14,24 +14,26 @@ CREATE TABLE marc_subfield_table ( subfieldid bigint(20) unsigned NOT NULL auto_increment, - bibid bigint(20) NOT NULL default '0', - tag char(3) NOT NULL default '', - subfieldcode char(1) NOT NULL default '', - subfieldorder tinyint(4) NOT NULL default '0', - subfieldvalue varchar(255) default NULL, - valuebloblink bigint(20) default NULL, + bibid bigint(20) NOT NULL default '0', # biblio idendifier + tag char(3) NOT NULL default '', # tag number (110) + tagorder tinyint(4) NOT NULL default '1', # used when a tag is repeatable, from 1 to N + subfieldcode char(1) NOT NULL default '', # subfieldcode (a) + subfieldorder tinyint(4) NOT NULL default '1', # used when a subfield is repeatable, from 1 to N + subfieldvalue varchar(255) default NULL, # the subfield value, is not longer than 255 char + valuebloblink bigint(20) default NULL, # the link to the blob, if subfield value is longer than 255 char PRIMARY KEY (subfieldid), - KEY bibid (bibid), - KEY (tag), + KEY bibid (bibid), # BRUTE indexes : we index all the fields except subfieldvalue + KEY (tag), # should have to be optimized later + KEY (tagorder), KEY (subfieldcode), KEY (subfieldorder) ) TYPE=MyISAM; -# marc_blob_tag containts tag longer than 255 car. -# They are linked to a marc_NXX_tag_table record by bloblink +# marc_blob_subfield containts subfields longer than 255 car. +# They are linked to a marc_subfield_table record by bloblink CREATE TABLE marc_blob_tag ( blobidlink bigint(20) NOT NULL auto_increment, - tagvalue longtext NOT NULL, + subfieldvalue longtext NOT NULL, PRIMARY KEY (blobidlink) ) TYPE=MyISAM; @@ -70,13 +72,19 @@ CREATE TABLE marc_subfield_table ( # This table is the table used for searching the marc records # marc_tag_word contains 1 record for each word in each subfield in each tag in each biblio - CREATE TABLE marc_tag_word ( + CREATE TABLE marc_word ( bibid bigint(20) NOT NULL default '0', - tagnumber char(3) NOT NULL default '', + tag char(3) NOT NULL default '', + tagorder tinyint(4) NOT NULL default '1', subfieldid char(1) NOT NULL default '', + subfieldorder tinyint(4) NOT NULL default '1', word varchar(255) NOT NULL default '', sndx_word varchar(255) NOT NULL default '', # the soundex version of the word (indexed) - PRIMARY KEY (bibid,tagnumber,subfieldid), + KEY bibid (bibid), + KEY tag (tag), + KEY tagorder (tagorder), + KEY subfieldid (subfieldid), + KEY subfieldorder (subfieldorder), KEY word (word), KEY sndx_word (sndx_word) ) TYPE=MyISAM; -- 2.20.1