update for missing subscriptions.lastbranch col in serials
[koha_fer] / installer / kohastructure.sql
index f7a9a23..7bf96fe 100644 (file)
@@ -7,7 +7,9 @@
 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
 /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
 /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
 /*!40101 SET NAMES utf8 */;
+/*!40103 SET TIME_ZONE='+00:00' */;
 /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
 /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
 /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
@@ -19,8 +21,8 @@
 
 DROP TABLE IF EXISTS `accountlines`;
 CREATE TABLE `accountlines` (
-  `borrowernumber` int(11) NOT NULL default '0',
-  `accountno` smallint(6) NOT NULL default '0',
+  `borrowernumber` int(11) NOT NULL default 0,
+  `accountno` smallint(6) NOT NULL default 0,
   `itemnumber` int(11) default NULL,
   `date` date default NULL,
   `amount` decimal(28,6) default NULL,
@@ -29,8 +31,8 @@ CREATE TABLE `accountlines` (
   `accounttype` varchar(5) default NULL,
   `amountoutstanding` decimal(28,6) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-  `notify_id` int(11) NOT NULL default '0',
-  `notify_level` int(2) NOT NULL default '0',
+  `notify_id` int(11) NOT NULL default 0,
+  `notify_level` int(2) NOT NULL default 0,
   KEY `acctsborridx` (`borrowernumber`),
   KEY `timeidx` (`timestamp`),
   KEY `itemnumber` (`itemnumber`),
@@ -44,9 +46,9 @@ CREATE TABLE `accountlines` (
 
 DROP TABLE IF EXISTS `accountoffsets`;
 CREATE TABLE `accountoffsets` (
-  `borrowernumber` int(11) NOT NULL default '0',
-  `accountno` smallint(6) NOT NULL default '0',
-  `offsetaccount` smallint(6) NOT NULL default '0',
+  `borrowernumber` int(11) NOT NULL default 0,
+  `accountno` smallint(6) NOT NULL default 0,
+  `offsetaccount` smallint(6) NOT NULL default 0,
   `offsetamount` decimal(28,6) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -58,7 +60,7 @@ CREATE TABLE `accountoffsets` (
 DROP TABLE IF EXISTS `action_logs`;
 CREATE TABLE `action_logs` (
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-  `user` int(11) NOT NULL default '0',
+  `user` int(11) NOT NULL default 0,
   `module` text,
   `action` text,
   `object` int(11) default NULL,
@@ -73,7 +75,7 @@ CREATE TABLE `action_logs` (
 DROP TABLE IF EXISTS `alert`;
 CREATE TABLE `alert` (
   `alertid` int(11) NOT NULL auto_increment,
-  `borrowernumber` int(11) NOT NULL default '0',
+  `borrowernumber` int(11) NOT NULL default 0,
   `type` varchar(10) NOT NULL default '',
   `externalid` varchar(20) NOT NULL default '',
   PRIMARY KEY  (`alertid`),
@@ -90,7 +92,7 @@ CREATE TABLE `aqbasket` (
   `basketno` int(11) NOT NULL auto_increment,
   `creationdate` date default NULL,
   `closedate` date default NULL,
-  `booksellerid` int(11) NOT NULL default '1',
+  `booksellerid` int(11) NOT NULL default 1,
   `authorisedby` varchar(10) default NULL,
   `booksellerinvoicenumber` mediumtext,
   PRIMARY KEY  (`basketno`),
@@ -104,10 +106,10 @@ CREATE TABLE `aqbasket` (
 
 DROP TABLE IF EXISTS `aqbookfund`;
 CREATE TABLE `aqbookfund` (
-  `bookfundid` varchar(5) NOT NULL default '''''',
+  `bookfundid` varchar(10) NOT NULL default '',
   `bookfundname` mediumtext,
   `bookfundgroup` varchar(5) default NULL,
-  `branchcode` varchar(4) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
   PRIMARY KEY  (`bookfundid`,`branchcode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -167,12 +169,12 @@ CREATE TABLE `aqbooksellers` (
 
 DROP TABLE IF EXISTS `aqbudget`;
 CREATE TABLE `aqbudget` (
-  `bookfundid` varchar(5) NOT NULL default '',
-  `startdate` date NOT NULL default '0000-00-00',
+  `bookfundid` varchar(10) NOT NULL default '',
+  `startdate` date NOT NULL default 0,
   `enddate` date default NULL,
   `budgetamount` decimal(13,2) default NULL,
   `aqbudgetid` tinyint(4) NOT NULL auto_increment,
-  `branchcode` varchar(4) default NULL,
+  `branchcode` varchar(10) default NULL,
   PRIMARY KEY  (`aqbudgetid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -184,8 +186,8 @@ DROP TABLE IF EXISTS `aqorderbreakdown`;
 CREATE TABLE `aqorderbreakdown` (
   `ordernumber` int(11) default NULL,
   `linenumber` int(11) default NULL,
-  `branchcode` char(4) default NULL,
-  `bookfundid` char(5) NOT NULL default '',
+  `branchcode` varchar(10) default NULL,
+  `bookfundid` varchar(10) NOT NULL default '',
   `allocation` smallint(6) default NULL,
   KEY `ordernumber` (`ordernumber`),
   KEY `bookfundid` (`bookfundid`),
@@ -199,8 +201,8 @@ CREATE TABLE `aqorderbreakdown` (
 
 DROP TABLE IF EXISTS `aqorderdelivery`;
 CREATE TABLE `aqorderdelivery` (
-  `ordernumber` date NOT NULL default '0000-00-00',
-  `deliverynumber` smallint(6) NOT NULL default '0',
+  `ordernumber` date default NULL,
+  `deliverynumber` smallint(6) NOT NULL default 0,
   `deliverydate` varchar(18) default NULL,
   `qtydelivered` smallint(6) default NULL,
   `deliverycomments` mediumtext
@@ -256,7 +258,7 @@ DROP TABLE IF EXISTS `auth_header`;
 CREATE TABLE `auth_header` (
   `authid` bigint(20) unsigned NOT NULL auto_increment,
   `authtypecode` varchar(10) NOT NULL default '',
-  `datecreated` date NOT NULL default '0000-00-00',
+  `datecreated` date default NULL,
   `datemodified` date default NULL,
   `origincode` varchar(20) default NULL,
   `authtrees` mediumtext,
@@ -275,58 +277,37 @@ DROP TABLE IF EXISTS `auth_subfield_structure`;
 CREATE TABLE `auth_subfield_structure` (
   `authtypecode` varchar(10) NOT NULL default '',
   `tagfield` varchar(3) NOT NULL default '',
-  `tagsubfield` char(1) NOT NULL default '',
+  `tagsubfield` varchar(1) NOT NULL default '',
   `liblibrarian` varchar(255) NOT NULL default '',
   `libopac` varchar(255) NOT NULL default '',
-  `repeatable` tinyint(4) NOT NULL default '0',
-  `mandatory` tinyint(4) NOT NULL default '0',
+  `repeatable` tinyint(4) NOT NULL default 0,
+  `mandatory` tinyint(4) NOT NULL default 0,
   `tab` tinyint(1) default NULL,
   `authorised_value` varchar(10) default NULL,
   `value_builder` varchar(80) default NULL,
   `seealso` varchar(255) default NULL,
   `isurl` tinyint(1) default NULL,
-  `hidden` tinyint(3) NOT NULL default '0',
-  `linkid` tinyint(1) NOT NULL default '0',
-  `kohafield` varchar(45) NOT NULL default '',
+  `hidden` tinyint(3) NOT NULL default 0,
+  `linkid` tinyint(1) NOT NULL default 0,
+  `kohafield` varchar(45) NULL default '',
   `frameworkcode` varchar(8) NOT NULL default '',
   PRIMARY KEY  (`authtypecode`,`tagfield`,`tagsubfield`),
   KEY `tab` (`authtypecode`,`tab`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `auth_subfield_table`
---
-
-DROP TABLE IF EXISTS `auth_subfield_table`;
-CREATE TABLE `auth_subfield_table` (
-  `subfieldid` bigint(20) unsigned NOT NULL auto_increment,
-  `authid` bigint(20) unsigned NOT NULL default '0',
-  `tag` varchar(3) NOT NULL default '',
-  `tagorder` tinyint(4) NOT NULL default '1',
-  `tag_indicator` varchar(2) NOT NULL default '',
-  `subfieldcode` char(1) NOT NULL default '',
-  `subfieldorder` tinyint(4) NOT NULL default '1',
-  `subfieldvalue` varchar(255) default NULL,
-  PRIMARY KEY  (`subfieldid`),
-  KEY `authid` (`authid`),
-  KEY `tag` (`tag`),
-  KEY `subfieldcode` (`subfieldcode`),
-  KEY `subfieldvalue` (`subfieldvalue`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `auth_tag_structure`
 --
 
 DROP TABLE IF EXISTS `auth_tag_structure`;
 CREATE TABLE `auth_tag_structure` (
-  `authtypecode` char(10) NOT NULL default '',
-  `tagfield` char(3) NOT NULL default '',
-  `liblibrarian` char(255) NOT NULL default '',
-  `libopac` char(255) NOT NULL default '',
-  `repeatable` tinyint(4) NOT NULL default '0',
-  `mandatory` tinyint(4) NOT NULL default '0',
-  `authorised_value` char(10) default NULL,
+  `authtypecode` varchar(10) NOT NULL default '',
+  `tagfield` varchar(3) NOT NULL default '',
+  `liblibrarian` varchar(255) NOT NULL default '',
+  `libopac` varchar(255) NOT NULL default '',
+  `repeatable` tinyint(4) NOT NULL default 0,
+  `mandatory` tinyint(4) NOT NULL default 0,
+  `authorised_value` varchar(10) default NULL,
   PRIMARY KEY  (`authtypecode`,`tagfield`),
   CONSTRAINT `auth_tag_structure_ibfk_1` FOREIGN KEY (`authtypecode`) REFERENCES `auth_types` (`authtypecode`) ON DELETE CASCADE ON UPDATE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -351,9 +332,9 @@ CREATE TABLE `auth_types` (
 DROP TABLE IF EXISTS `authorised_values`;
 CREATE TABLE `authorised_values` (
   `id` int(11) NOT NULL auto_increment,
-  `category` char(10) NOT NULL default '',
-  `authorised_value` char(80) NOT NULL default '',
-  `lib` char(80) default NULL,
+  `category` varchar(10) NOT NULL default '',
+  `authorised_value` varchar(80) NOT NULL default '',
+  `lib` varchar(80) default NULL,
   PRIMARY KEY  (`id`),
   KEY `name` (`category`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -364,7 +345,7 @@ CREATE TABLE `authorised_values` (
 
 DROP TABLE IF EXISTS `biblio`;
 CREATE TABLE `biblio` (
-  `biblionumber` int(11) NOT NULL default '0',
+  `biblionumber` int(11) NOT NULL default 0,
   `frameworkcode` varchar(4) NOT NULL default '',
   `author` mediumtext,
   `title` mediumtext,
@@ -374,6 +355,7 @@ CREATE TABLE `biblio` (
   `seriestitle` mediumtext,
   `copyrightdate` smallint(6) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+  `datecreated` DATE NOT NULL,
   `abstract` mediumtext,
   PRIMARY KEY  (`biblionumber`),
   KEY `blbnoidx` (`biblionumber`)
@@ -385,47 +367,33 @@ CREATE TABLE `biblio` (
 
 DROP TABLE IF EXISTS `biblio_framework`;
 CREATE TABLE `biblio_framework` (
-  `frameworkcode` char(4) NOT NULL default '',
-  `frameworktext` char(255) NOT NULL default '',
+  `frameworkcode` varchar(4) NOT NULL default '',
+  `frameworktext` varchar(255) NOT NULL default '',
   PRIMARY KEY  (`frameworkcode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `biblioanalysis`
---
-
-DROP TABLE IF EXISTS `biblioanalysis`;
-CREATE TABLE `biblioanalysis` (
-  `analyticaltitle` mediumtext,
-  `biblionumber` int(11) NOT NULL default '0',
-  `analyticalauthor` mediumtext
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `biblioitems`
 --
 
 DROP TABLE IF EXISTS `biblioitems`;
 CREATE TABLE `biblioitems` (
-  `biblioitemnumber` int(11) NOT NULL default '0',
-  `biblionumber` int(11) NOT NULL default '0',
+  `biblioitemnumber` int(11) NOT NULL default 0,
+  `biblionumber` int(11) NOT NULL default 0,
   `volume` mediumtext,
   `number` mediumtext,
-  `classification` varchar(25) default NULL,
-  `itemtype` varchar(4) default NULL,
+  `itemtype` varchar(10) default NULL,
   `isbn` varchar(14) default NULL,
   `issn` varchar(9) default NULL,
-  `dewey` varchar(30) default '',
-  `subclass` varchar(3) default NULL,
-  `publicationyear` smallint(6) default NULL,
+  `publicationyear` text,
   `publishercode` varchar(255) default NULL,
   `volumedate` date default NULL,
-  `volumeddesc` varchar(255) default NULL,
-  `seriestitle` text NOT NULL,
-  `seriesissn` text NOT NULL,
-  `seriesvolume` text NOT NULL,
-  `editionstatement` text NOT NULL,
-  `editionreponsability` text NOT NULL,
+  `volumedesc` text,
+  `collectiontitle` mediumtext default NULL,
+  `collectionissn` text default NULL,
+  `collectionvolume` mediumtext default NULL,
+  `editionstatement` text default NULL,
+  `editionresponsibility` text default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `illus` varchar(255) default NULL,
   `pages` varchar(255) default NULL,
@@ -433,10 +401,14 @@ CREATE TABLE `biblioitems` (
   `size` varchar(255) default NULL,
   `place` varchar(255) default NULL,
   `lccn` varchar(25) default NULL,
-  `marc` blob,
+  `marc` longblob,
   `url` varchar(255) default NULL,
-  `lcsort` varchar(25) default NULL,
-  `ccode` varchar(4) default NULL,
+  `cn_source` varchar(10) default NULL,
+  `cn_class` varchar(30) default NULL,
+  `cn_item` varchar(10) default NULL,
+  `cn_suffix` varchar(10) default NULL,
+  `cn_sort` varchar(30) default NULL,
+  `totalissues` int(10),
   `marcxml` longtext NOT NULL,
   PRIMARY KEY  (`biblioitemnumber`),
   KEY `bibinoidx` (`biblioitemnumber`),
@@ -447,29 +419,6 @@ CREATE TABLE `biblioitems` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `bookshelf`
---
-
-DROP TABLE IF EXISTS `bookshelf`;
-CREATE TABLE `bookshelf` (
-  `shelfnumber` int(11) NOT NULL auto_increment,
-  `shelfname` char(255) default NULL,
-  `owner` char(80) default NULL,
-  `category` char(1) default NULL,
-  PRIMARY KEY  (`shelfnumber`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
--- Table structure for table `borexp`
---
-
-DROP TABLE IF EXISTS `borexp`;
-CREATE TABLE `borexp` (
-  `borrowernumber` int(11) default NULL,
-  `newexp` date default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `borrowers`
 --
 
@@ -517,7 +466,7 @@ CREATE TABLE `borrowers` (
   `relationship` varchar(100) default NULL,
   `ethnicity` varchar(50) default NULL,
   `ethnotes` varchar(255) default NULL,
-  `sex` char(1) default NULL,
+  `sex` varchar(1) default NULL,
   `password` varchar(30) default NULL,
   `flags` int(11) default NULL,
   `userid` varchar(30) default NULL,
@@ -529,29 +478,21 @@ CREATE TABLE `borrowers` (
   KEY `borrowernumber` (`borrowernumber`),
   KEY `categorycode` (`categorycode`),
   KEY `branchcode` (`branchcode`),
+  KEY `userid` (`userid`),
   CONSTRAINT `borrowers_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`),
   CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `borrowers_to_borrowers`
---
-
-DROP TABLE IF EXISTS `borrowers_to_borrowers`;
-CREATE TABLE `borrowers_to_borrowers` (
-  `borrower1` int(11) default NULL,
-  `borrower2` int(11) default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `branchcategories`
 --
 
 DROP TABLE IF EXISTS `branchcategories`;
 CREATE TABLE `branchcategories` (
-  `categorycode` varchar(4) NOT NULL default '',
-  `categoryname` mediumtext,
+  `categorycode` varchar(10) NOT NULL default '',
+  `categoryname` varchar(32),
   `codedescription` mediumtext,
+  `categorytype` varchar(16),
   PRIMARY KEY  (`categorycode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -581,8 +522,8 @@ CREATE TABLE `branches` (
 
 DROP TABLE IF EXISTS `branchrelations`;
 CREATE TABLE `branchrelations` (
-  `branchcode` varchar(4) NOT NULL default '',
-  `categorycode` varchar(4) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
+  `categorycode` varchar(10) NOT NULL default '',
   PRIMARY KEY  (`branchcode`,`categorycode`),
   KEY `branchcode` (`branchcode`),
   KEY `categorycode` (`categorycode`),
@@ -596,7 +537,7 @@ CREATE TABLE `branchrelations` (
 
 DROP TABLE IF EXISTS `branchtransfers`;
 CREATE TABLE `branchtransfers` (
-  `itemnumber` int(11) NOT NULL default '0',
+  `itemnumber` int(11) NOT NULL default 0,
   `datesent` datetime default NULL,
   `frombranch` varchar(10) NOT NULL default '',
   `datearrived` datetime default NULL,
@@ -610,19 +551,17 @@ CREATE TABLE `branchtransfers` (
   CONSTRAINT `branchtransfers_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
+
 --
--- Table structure for table `catalogueentry`
+-- Table structure for table `browser`
 --
-
-DROP TABLE IF EXISTS `catalogueentry`;
-CREATE TABLE `catalogueentry` (
-  `catalogueentry` mediumtext NOT NULL,
-  `entrytype` varchar(2) default NULL,
-  `see` mediumtext,
-  `seealso` mediumtext,
-  `seeinstead` mediumtext,
-  `biblionumber` int(11) default NULL,
-  KEY `entrytype` (`entrytype`,`catalogueentry`(250))
+DROP TABLE IF EXISTS `browser`;
+CREATE TABLE `browser` (
+  `level` int(11) NOT NULL,
+  `classification` varchar(20) NOT NULL,
+  `description` varchar(255) NOT NULL,
+  `number` bigint(20) NOT NULL,
+  `endnode` tinyint(4) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -642,7 +581,7 @@ CREATE TABLE `categories` (
   `overduenoticerequired` tinyint(1) default NULL,
   `issuelimit` smallint(6) default NULL,
   `reservefee` decimal(28,6) default NULL,
-  `category_type` char(1) NOT NULL default 'A',
+  `category_type` varchar(1) NOT NULL default 'A',
   PRIMARY KEY  (`categorycode`),
   UNIQUE KEY `categorycode` (`categorycode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -660,33 +599,47 @@ CREATE TABLE `categorytable` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `charges`
---
-
-DROP TABLE IF EXISTS `charges`;
-CREATE TABLE `charges` (
-  `charge_id` varchar(5) NOT NULL default '',
-  `description` text NOT NULL,
-  `amount` decimal(28,6) NOT NULL default '0.000000',
-  `min` int(4) NOT NULL default '0',
-  `max` int(4) NOT NULL default '0',
-  `level` int(1) NOT NULL default '0',
-  PRIMARY KEY  (`charge_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `cities`
 --
 
 DROP TABLE IF EXISTS `cities`;
 CREATE TABLE `cities` (
   `cityid` int(11) NOT NULL auto_increment,
-  `city_name` char(100) NOT NULL default '',
-  `city_zipcode` char(20) default NULL,
+  `city_name` varchar(100) NOT NULL default '',
+  `city_zipcode` varchar(20) default NULL,
   PRIMARY KEY  (`cityid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
+-- Table structure for table `class_sort_rules`
+--
+
+DROP TABLE IF EXISTS `class_sort_rules`;
+CREATE TABLE `class_sort_rules` (
+  `class_sort_rule` varchar(10) NOT NULL default '',
+  `description` mediumtext,
+  `sort_routine` varchar(30) NOT NULL default '',
+  PRIMARY KEY (`class_sort_rule`),
+  UNIQUE KEY `class_sort_rule_idx` (`class_sort_rule`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `class_sources`
+--
+
+DROP TABLE IF EXISTS `class_sources`;
+CREATE TABLE `class_sources` (
+  `cn_source` varchar(10) NOT NULL default '',
+  `description` mediumtext,
+  `used` tinyint(4) NOT NULL default 0,
+  `class_sort_rule` varchar(10) NOT NULL default '',
+  PRIMARY KEY (`cn_source`),
+  UNIQUE KEY `cn_source_idx` (`cn_source`),
+  KEY `used_idx` (`used`),
+  CONSTRAINT `class_source_ibfk_1` FOREIGN KEY (`class_sort_rule`) REFERENCES `class_sort_rules` (`class_sort_rule`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
 -- Table structure for table `currency`
 --
 
@@ -703,7 +656,8 @@ CREATE TABLE `currency` (
 
 DROP TABLE IF EXISTS `deletedbiblio`;
 CREATE TABLE `deletedbiblio` (
-  `biblionumber` int(11) NOT NULL default '0',
+  `biblionumber` int(11) NOT NULL default 0,
+  `frameworkcode` varchar(4) NOT NULL default '',
   `author` mediumtext,
   `title` mediumtext,
   `unititle` mediumtext,
@@ -712,7 +666,7 @@ CREATE TABLE `deletedbiblio` (
   `seriestitle` mediumtext,
   `copyrightdate` smallint(6) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-  `marc` blob,
+  `datecreated` DATE NOT NULL,
   `abstract` mediumtext,
   PRIMARY KEY  (`biblionumber`),
   KEY `blbnoidx` (`biblionumber`)
@@ -724,34 +678,43 @@ CREATE TABLE `deletedbiblio` (
 
 DROP TABLE IF EXISTS `deletedbiblioitems`;
 CREATE TABLE `deletedbiblioitems` (
-  `biblioitemnumber` int(11) NOT NULL default '0',
-  `biblionumber` int(11) NOT NULL default '0',
+  `biblioitemnumber` int(11) NOT NULL default 0,
+  `biblionumber` int(11) NOT NULL default 0,
   `volume` mediumtext,
   `number` mediumtext,
-  `classification` varchar(25) default NULL,
-  `itemtype` varchar(4) default NULL,
+  `itemtype` varchar(10) default NULL,
   `isbn` varchar(14) default NULL,
   `issn` varchar(9) default NULL,
-  `dewey` double(8,6) default NULL,
-  `subclass` varchar(3) default NULL,
-  `publicationyear` smallint(6) default NULL,
+  `publicationyear` text,
   `publishercode` varchar(255) default NULL,
   `volumedate` date default NULL,
-  `volumeddesc` varchar(255) default NULL,
+  `volumedesc` text,
+  `collectiontitle` mediumtext default NULL,
+  `collectionissn` text default NULL,
+  `collectionvolume` mediumtext default NULL,
+  `editionstatement` text default NULL,
+  `editionresponsibility` text default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `illus` varchar(255) default NULL,
   `pages` varchar(255) default NULL,
   `notes` mediumtext,
   `size` varchar(255) default NULL,
+  `place` varchar(255) default NULL,
   `lccn` varchar(25) default NULL,
-  `marc` mediumtext,
+  `marc` longblob,
   `url` varchar(255) default NULL,
-  `place` varchar(255) default NULL,
-  `lcsort` varchar(25) default NULL,
-  `ccode` varchar(4) default NULL,
+  `cn_source` varchar(10) default NULL,
+  `cn_class` varchar(30) default NULL,
+  `cn_item` varchar(10) default NULL,
+  `cn_suffix` varchar(10) default NULL,
+  `cn_sort` varchar(30) default NULL,
+  `totalissues` int(10),
+  `marcxml` longtext NOT NULL,
   PRIMARY KEY  (`biblioitemnumber`),
   KEY `bibinoidx` (`biblioitemnumber`),
-  KEY `bibnoidx` (`biblionumber`)
+  KEY `bibnoidx` (`biblionumber`),
+  KEY `isbn` (`isbn`),
+  KEY `publishercode` (`publishercode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -760,7 +723,7 @@ CREATE TABLE `deletedbiblioitems` (
 
 DROP TABLE IF EXISTS `deletedborrowers`;
 CREATE TABLE `deletedborrowers` (
-  `borrowernumber` int(11) NOT NULL default '0',
+  `borrowernumber` int(11) NOT NULL default 0,
   `cardnumber` varchar(9) NOT NULL default '',
   `surname` mediumtext NOT NULL,
   `firstname` text,
@@ -787,7 +750,7 @@ CREATE TABLE `deletedborrowers` (
   `B_email` text,
   `B_phone` mediumtext,
   `dateofbirth` date default NULL,
-  `branchcode` varchar(4) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
   `categorycode` varchar(2) default NULL,
   `dateenrolled` date default NULL,
   `dateexpiry` date default NULL,
@@ -802,7 +765,7 @@ CREATE TABLE `deletedborrowers` (
   `relationship` varchar(100) default NULL,
   `ethnicity` varchar(50) default NULL,
   `ethnotes` varchar(255) default NULL,
-  `sex` char(1) default NULL,
+  `sex` varchar(1) default NULL,
   `password` varchar(30) default NULL,
   `flags` int(11) default NULL,
   `userid` varchar(30) default NULL,
@@ -820,47 +783,46 @@ CREATE TABLE `deletedborrowers` (
 
 DROP TABLE IF EXISTS `deleteditems`;
 CREATE TABLE `deleteditems` (
-  `itemnumber` int(11) NOT NULL default '0',
-  `biblionumber` int(11) NOT NULL default '0',
-  `multivolumepart` varchar(30) default NULL,
-  `biblioitemnumber` int(11) NOT NULL default '0',
-  `barcode` varchar(9) NOT NULL default '',
+  `itemnumber` int(11) NOT NULL default 0,
+  `biblionumber` int(11) NOT NULL default 0,
+  `biblioitemnumber` int(11) NOT NULL default 0,
+  `barcode` varchar(20) default NULL,
   `dateaccessioned` date default NULL,
   `booksellerid` varchar(10) default NULL,
   `homebranch` varchar(4) default NULL,
-  `price` decimal(28,6) default NULL,
-  `replacementprice` decimal(28,6) default NULL,
+  `price` decimal(8,2) default NULL,
+  `replacementprice` decimal(8,2) default NULL,
   `replacementpricedate` date default NULL,
   `datelastborrowed` date default NULL,
   `datelastseen` date default NULL,
-  `multivolume` tinyint(1) default NULL,
   `stack` tinyint(1) default NULL,
   `notforloan` tinyint(1) default NULL,
+  `damaged` tinyint(1) default NULL,
   `itemlost` tinyint(1) default NULL,
   `wthdrawn` tinyint(1) default NULL,
-  `bulk` varchar(30) default NULL,
+  `itemcallnumber` varchar(30) default NULL,
   `issues` smallint(6) default NULL,
   `renewals` smallint(6) default NULL,
   `reserves` smallint(6) default NULL,
   `restricted` tinyint(1) default NULL,
-  `binding` decimal(28,6) default NULL,
   `itemnotes` mediumtext,
-  `holdingbranch` varchar(4) default NULL,
-  `interim` tinyint(1) default NULL,
-  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-  `marc` blob,
+  `holdingbranch` varchar(10) default NULL,
   `paidfor` mediumtext,
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `location` varchar(80) default NULL,
-  `itemcallnumber` varchar(30) default NULL,
-  `onloan` date default '0000-00-00',
-  `cutterextra` varchar(45) default NULL,
-  `issue_date` date default NULL,
-  `itype` varchar(10) default NULL,
+  `onloan` date default NULL,
+  `cn_source` varchar(10) default NULL,
+  `cn_sort` varchar(30) default NULL,
+  `ccode` varchar(10) default NULL,
+  `materials` varchar(10) default NULL,
+  `uri` varchar(255) default NULL,
+  `marc` longblob,
   PRIMARY KEY  (`itemnumber`),
-  UNIQUE KEY `barcode` (`barcode`),
-  KEY `itembarcodeidx` (`barcode`),
-  KEY `itembinoidx` (`biblioitemnumber`),
-  KEY `itembibnoidx` (`biblionumber`)
+  UNIQUE KEY `delitembarcodeidx` (`barcode`),
+  KEY `delitembinoidx` (`biblioitemnumber`),
+  KEY `delitembibnoidx` (`biblionumber`),
+  KEY `delhomebranch` (`homebranch`),
+  KEY `delholdingbranch` (`holdingbranch`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -875,6 +837,110 @@ CREATE TABLE `ethnicity` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
+-- Table structure for table `import_batches`
+--
+
+DROP TABLE IF EXISTS `import_batches`;
+CREATE TABLE `import_batches` (
+  `import_batch_id` int(11) NOT NULL auto_increment,
+  `template_id` int(11) default NULL,
+  `branchcode` varchar(10) default NULL,
+  `num_biblios` int(11) NOT NULL default 0,
+  `num_items` int(11) NOT NULL default 0,
+  `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `overlay_action` enum('replace', 'create_new', 'use_template') NOT NULL default 'create_new',
+  `import_status` enum('staging', 'staged', 'importing', 'imported', 'reverting', 'reverted', 'cleaned') NOT NULL default 'staging',
+  `batch_type` enum('batch', 'z3950') NOT NULL default 'batch',
+  `file_name` varchar(100),
+  `comments` mediumtext,
+  PRIMARY KEY (`import_batch_id`),
+  KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `import_records`
+--
+
+DROP TABLE IF EXISTS `import_records`;
+CREATE TABLE `import_records` (
+  `import_record_id` int(11) NOT NULL auto_increment,
+  `import_batch_id` int(11) NOT NULL,
+  `branchcode` varchar(10) default NULL,
+  `record_sequence` int(11) NOT NULL default 0,
+  `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+  `import_date` DATE default NULL,
+  `marc` longblob NOT NULL,
+  `marcxml` longtext NOT NULL,
+  `marcxml_old` longtext NOT NULL,
+  `record_type` enum('biblio', 'auth', 'holdings') NOT NULL default 'biblio',
+  `overlay_status` enum('no_match', 'auto_match', 'manual_match', 'match_applied') NOT NULL default 'no_match',
+  `status` enum('error', 'staged', 'imported', 'reverted', 'items_reverted') NOT NULL default 'staged',
+  `import_error` mediumtext,
+  `encoding` varchar(40) NOT NULL default '',
+  `z3950random` varchar(40) default NULL,
+  PRIMARY KEY (`import_record_id`),
+  CONSTRAINT `import_records_ifbk_1` FOREIGN KEY (`import_batch_id`)
+             REFERENCES `import_batches` (`import_batch_id`) ON DELETE CASCADE ON UPDATE CASCADE,
+  KEY `branchcode` (`branchcode`),
+  KEY `batch_sequence` (`import_batch_id`, `record_sequence`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for `import_record_matches`
+--
+DROP TABLE IF EXISTS `import_record_matches`;
+CREATE TABLE `import_record_matches` (
+  `import_record_id` int(11) NOT NULL,
+  `candidate_match_id` int(11) NOT NULL,
+  `score` int(11) NOT NULL default 0,
+  CONSTRAINT `import_record_matches_ibfk_1` FOREIGN KEY (`import_record_id`) 
+             REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
+  KEY `record_score` (`import_record_id`, `score`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `import_biblios`
+--
+
+DROP TABLE IF EXISTS `import_biblios`;
+CREATE TABLE `import_biblios` (
+  `import_record_id` int(11) NOT NULL,
+  `matched_biblionumber` int(11) default NULL,
+  `control_number` varchar(25) default NULL,
+  `original_source` varchar(25) default NULL,
+  `title` varchar(128) default NULL,
+  `author` varchar(80) default NULL,
+  `isbn` varchar(14) default NULL,
+  `issn` varchar(9) default NULL,
+  `has_items` tinyint(1) NOT NULL default 0,
+  CONSTRAINT `import_biblios_ibfk_1` FOREIGN KEY (`import_record_id`) 
+             REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
+  KEY `matched_biblionumber` (`matched_biblionumber`),
+  KEY `title` (`title`),
+  KEY `isbn` (`isbn`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `import_items`
+--
+
+DROP TABLE IF EXISTS `import_items`;
+CREATE TABLE `import_items` (
+  `import_items_id` int(11) NOT NULL auto_increment,
+  `import_record_id` int(11) NOT NULL,
+  `itemnumber` int(11) default NULL,
+  `branchcode` varchar(10) default NULL,
+  `status` enum('error', 'staged', 'imported', 'reverted') NOT NULL default 'staged',
+  `marcxml` longtext NOT NULL,
+  `import_error` mediumtext,
+  PRIMARY KEY (`import_items_id`),
+  CONSTRAINT `import_items_ibfk_1` FOREIGN KEY (`import_record_id`) 
+             REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
+  KEY `itemnumber` (`itemnumber`),
+  KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
 -- Table structure for table `issues`
 --
 
@@ -890,7 +956,7 @@ CREATE TABLE `issues` (
   `return` varchar(4) default NULL,
   `renewals` tinyint(4) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-  `issuedate` date NOT NULL default '0000-00-00',
+  `issuedate` date default NULL,
   KEY `issuesborridx` (`borrowernumber`),
   KEY `issuesitemidx` (`itemnumber`),
   KEY `bordate` (`borrowernumber`,`timestamp`),
@@ -904,8 +970,8 @@ CREATE TABLE `issues` (
 
 DROP TABLE IF EXISTS `issuingrules`;
 CREATE TABLE `issuingrules` (
-  `categorycode` varchar(2) NOT NULL default '',
-  `itemtype` varchar(4) NOT NULL default '',
+  `categorycode` varchar(10) NOT NULL default '',
+  `itemtype` varchar(10) NOT NULL default '',
   `restrictedtype` tinyint(1) default NULL,
   `rentaldiscount` decimal(28,6) default NULL,
   `reservecharge` decimal(28,6) default NULL,
@@ -916,12 +982,10 @@ CREATE TABLE `issuingrules` (
   `chargename` varchar(100) default NULL,
   `maxissueqty` int(4) default NULL,
   `issuelength` int(4) default NULL,
-  `branchcode` varchar(4) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
   PRIMARY KEY  (`branchcode`,`categorycode`,`itemtype`),
   KEY `categorycode` (`categorycode`),
-  KEY `itemtype` (`itemtype`),
-  CONSTRAINT `issuingrules_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE,
-  CONSTRAINT `issuingrules_ibfk_2` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`) ON DELETE CASCADE ON UPDATE CASCADE
+  KEY `itemtype` (`itemtype`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -930,10 +994,9 @@ CREATE TABLE `issuingrules` (
 
 DROP TABLE IF EXISTS `items`;
 CREATE TABLE `items` (
-  `itemnumber` int(11) NOT NULL default '0',
-  `biblionumber` int(11) NOT NULL default '0',
-  `multivolumepart` varchar(30) default NULL,
-  `biblioitemnumber` int(11) NOT NULL default '0',
+  `itemnumber` int(11) NOT NULL default 0,
+  `biblionumber` int(11) NOT NULL default 0,
+  `biblioitemnumber` int(11) NOT NULL default 0,
   `barcode` varchar(20) default NULL,
   `dateaccessioned` date default NULL,
   `booksellerid` varchar(10) default NULL,
@@ -943,9 +1006,9 @@ CREATE TABLE `items` (
   `replacementpricedate` date default NULL,
   `datelastborrowed` date default NULL,
   `datelastseen` date default NULL,
-  `multivolume` tinyint(1) default NULL,
   `stack` tinyint(1) default NULL,
   `notforloan` tinyint(1) default NULL,
+  `damaged` tinyint(1) default NULL,
   `itemlost` tinyint(1) default NULL,
   `wthdrawn` tinyint(1) default NULL,
   `itemcallnumber` varchar(30) default NULL,
@@ -953,18 +1016,19 @@ CREATE TABLE `items` (
   `renewals` smallint(6) default NULL,
   `reserves` smallint(6) default NULL,
   `restricted` tinyint(1) default NULL,
-  `binding` decimal(28,6) default NULL,
   `itemnotes` mediumtext,
   `holdingbranch` varchar(10) default NULL,
   `paidfor` mediumtext,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `location` varchar(80) default NULL,
-  `onloan` date default '0000-00-00',
-  `cutterextra` varchar(45) default NULL,
-  `issue_date` date default NULL,
-  `itype` varchar(10) default NULL,
+  `onloan` date default NULL,
+  `cn_source` varchar(10) default NULL,
+  `cn_sort` varchar(30) default NULL,
+  `ccode` varchar(10) default NULL,
+  `materials` varchar(10) default NULL,
+  `uri` varchar(255) default NULL,
   PRIMARY KEY  (`itemnumber`),
-  KEY `itembarcodeidx` (`barcode`),
+  UNIQUE KEY `itembarcodeidx` (`barcode`),
   KEY `itembinoidx` (`biblioitemnumber`),
   KEY `itembibnoidx` (`biblionumber`),
   KEY `homebranch` (`homebranch`),
@@ -975,17 +1039,6 @@ CREATE TABLE `items` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `itemsprices`
---
-
-DROP TABLE IF EXISTS `itemsprices`;
-CREATE TABLE `itemsprices` (
-  `itemnumber` int(11) default NULL,
-  `price1` decimal(28,6) default NULL,
-  `price2` decimal(28,6) default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `itemtypes`
 --
 
@@ -1009,10 +1062,11 @@ CREATE TABLE `itemtypes` (
 DROP TABLE IF EXISTS `labels`;
 CREATE TABLE `labels` (
   `labelid` int(11) NOT NULL auto_increment,
+  `batch_id` varchar(10) NOT NULL default 1,
   `itemnumber` varchar(100) NOT NULL default '',
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   PRIMARY KEY  (`labelid`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+) ENGINE=MyISAM AUTO_INCREMENT=12143 DEFAULT CHARSET=utf8;
 
 --
 -- Table structure for table `labels_conf`
@@ -1021,18 +1075,51 @@ CREATE TABLE `labels` (
 DROP TABLE IF EXISTS `labels_conf`;
 CREATE TABLE `labels_conf` (
   `id` int(4) NOT NULL auto_increment,
-  `barcodetype` char(100) default '',
-  `title` tinyint(1) default '0',
-  `isbn` tinyint(1) default '0',
-  `itemtype` tinyint(1) default '0',
-  `barcode` tinyint(1) default '0',
-  `dewey` tinyint(1) default '0',
-  `class` tinyint(1) default '0',
-  `author` tinyint(1) default '0',
-  `papertype` char(100) default '',
-  `startrow` int(2) default NULL,
+  `barcodetype` varchar(100) default '',
+  `title` int(1) default 0,
+  `itemtype` int(1) default 0,
+  `barcode` int(1) default 0,
+  `dewey` int(1) default 0,
+  `class` int(1) default 0,
+  `subclass` int(1) default 0,
+  `itemcallnumber` int(1) default 0,
+  `author` int(1) default 0,
+  `issn` int(1) default 0,
+  `isbn` int(1) default 0,
+  `startlabel` int(2) NOT NULL default 1,
+  `printingtype` varchar(32) default 'BAR',
+  `layoutname` varchar(20) NOT NULL default 'TEST',
+  `guidebox` int(1) default 0,
+  `active` tinyint(1) default 1,
+  `fonttype` varchar(10) default NULL,
+  `subtitle` int(1) default NULL,
   PRIMARY KEY  (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `labels_templates`
+--
+
+DROP TABLE IF EXISTS `labels_templates`;
+CREATE TABLE `labels_templates` (
+  `tmpl_id` int(4) NOT NULL auto_increment,
+  `tmpl_code` varchar(100) character set utf8 collate utf8_unicode_ci default '',
+  `tmpl_desc` varchar(100) character set utf8 collate utf8_unicode_ci default '',
+  `page_width` float default 0,
+  `page_height` float default 0,
+  `label_width` float default 0,
+  `label_height` float default 0,
+  `topmargin` float default 0,
+  `leftmargin` float default 0,
+  `cols` int(2) default 0,
+  `rows` int(2) default 0,
+  `colgap` float default 0,
+  `rowgap` float default 0,
+  `active` int(1) default NULL,
+  `units` varchar(20) character set utf8 collate utf8_unicode_ci default 'PX',
+  `fontsize` int(4) NOT NULL default 3,
+  PRIMARY KEY  (`tmpl_id`)
+) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
 
 --
 -- Table structure for table `letter`
@@ -1048,33 +1135,6 @@ CREATE TABLE `letter` (
   PRIMARY KEY  (`module`,`code`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
---
--- Table structure for table `marc_biblio`
---
-
-DROP TABLE IF EXISTS `marc_biblio`;
-CREATE TABLE `marc_biblio` (
-  `bibid` bigint(20) unsigned NOT NULL auto_increment,
-  `biblionumber` int(11) NOT NULL default '0',
-  `datecreated` date NOT NULL default '0000-00-00',
-  `datemodified` date default NULL,
-  `origincode` char(20) default NULL,
-  `frameworkcode` char(4) NOT NULL default '',
-  PRIMARY KEY  (`bibid`),
-  KEY `origincode` (`origincode`),
-  KEY `biblionumber` (`biblionumber`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
--- Table structure for table `marc_blob_subfield`
---
-
-DROP TABLE IF EXISTS `marc_blob_subfield`;
-CREATE TABLE `marc_blob_subfield` (
-  `blobidlink` bigint(20) NOT NULL auto_increment,
-  `subfieldvalue` longtext NOT NULL,
-  PRIMARY KEY  (`blobidlink`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
 -- Table structure for table `marc_breeding`
@@ -1102,11 +1162,11 @@ CREATE TABLE `marc_breeding` (
 DROP TABLE IF EXISTS `marc_subfield_structure`;
 CREATE TABLE `marc_subfield_structure` (
   `tagfield` varchar(3) NOT NULL default '',
-  `tagsubfield` char(1) NOT NULL default '',
+  `tagsubfield` varchar(1) NOT NULL default '',
   `liblibrarian` varchar(255) NOT NULL default '',
   `libopac` varchar(255) NOT NULL default '',
-  `repeatable` tinyint(4) NOT NULL default '0',
-  `mandatory` tinyint(4) NOT NULL default '0',
+  `repeatable` tinyint(4) NOT NULL default 0,
+  `mandatory` tinyint(4) NOT NULL default 0,
   `kohafield` varchar(40) default NULL,
   `tab` tinyint(1) default NULL,
   `authorised_value` varchar(10) default NULL,
@@ -1117,7 +1177,7 @@ CREATE TABLE `marc_subfield_structure` (
   `frameworkcode` varchar(4) NOT NULL default '',
   `seealso` varchar(255) default NULL,
   `link` varchar(80) default NULL,
-  `defaultvalue` text,
+  `defaultvalue` text default NULL,
   PRIMARY KEY  (`frameworkcode`,`tagfield`,`tagsubfield`),
   KEY `kohafield_2` (`kohafield`),
   KEY `tab` (`frameworkcode`,`tab`),
@@ -1125,60 +1185,22 @@ CREATE TABLE `marc_subfield_structure` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `marc_subfield_table`
---
-
-DROP TABLE IF EXISTS `marc_subfield_table`;
-CREATE TABLE `marc_subfield_table` (
-  `subfieldid` bigint(20) unsigned NOT NULL auto_increment,
-  `bibid` bigint(20) unsigned NOT NULL default '0',
-  `tag` varchar(3) NOT NULL default '',
-  `tagorder` int(11) NOT NULL default '1',
-  `tag_indicator` varchar(2) NOT NULL default '',
-  `subfieldcode` char(1) NOT NULL default '',
-  `subfieldorder` tinyint(4) NOT NULL default '1',
-  `subfieldvalue` varchar(255) default NULL,
-  `valuebloblink` bigint(20) default NULL,
-  PRIMARY KEY  (`subfieldid`),
-  KEY `bibid` (`bibid`),
-  KEY `tag` (`tag`),
-  KEY `tag_indicator` (`tag_indicator`),
-  KEY `subfieldorder` (`subfieldorder`),
-  KEY `subfieldcode` (`subfieldcode`),
-  KEY `subfieldvalue` (`subfieldvalue`),
-  KEY `tagorder` (`tagorder`),
-  KEY `marc_speed` (`tag`,`subfieldcode`,`subfieldvalue`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `marc_tag_structure`
 --
 
 DROP TABLE IF EXISTS `marc_tag_structure`;
 CREATE TABLE `marc_tag_structure` (
-  `tagfield` char(3) NOT NULL default '',
-  `liblibrarian` char(255) NOT NULL default '',
-  `libopac` char(255) NOT NULL default '',
-  `repeatable` tinyint(4) NOT NULL default '0',
-  `mandatory` tinyint(4) NOT NULL default '0',
-  `authorised_value` char(10) default NULL,
-  `frameworkcode` char(4) NOT NULL default '',
+  `tagfield` varchar(3) NOT NULL default '',
+  `liblibrarian` varchar(255) NOT NULL default '',
+  `libopac` varchar(255) NOT NULL default '',
+  `repeatable` tinyint(4) NOT NULL default 0,
+  `mandatory` tinyint(4) NOT NULL default 0,
+  `authorised_value` varchar(10) default NULL,
+  `frameworkcode` varchar(4) NOT NULL default '',
   PRIMARY KEY  (`frameworkcode`,`tagfield`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `marcrecorddone`
---
-
-DROP TABLE IF EXISTS `marcrecorddone`;
-CREATE TABLE `marcrecorddone` (
-  `isbn` char(40) default NULL,
-  `issn` char(40) default NULL,
-  `lccn` char(40) default NULL,
-  `controlnumber` char(40) default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `mediatypetable`
 --
 
@@ -1196,16 +1218,28 @@ CREATE TABLE `mediatypetable` (
 
 DROP TABLE IF EXISTS `notifys`;
 CREATE TABLE `notifys` (
-  `notify_id` int(11) NOT NULL default '0',
-  `borrowernumber` int(11) NOT NULL default '0',
-  `itemnumber` int(11) NOT NULL default '0',
-  `notify_date` date NOT NULL default '0000-00-00',
+  `notify_id` int(11) NOT NULL default 0,
+  `borrowernumber` int(11) NOT NULL default 0,
+  `itemnumber` int(11) NOT NULL default 0,
+  `notify_date` date default NULL,
   `notify_send_date` date default NULL,
-  `notify_level` int(1) NOT NULL default '0',
+  `notify_level` int(1) NOT NULL default 0,
   `method` varchar(20) NOT NULL default ''
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
+-- Table structure for table `nozebra`
+--
+CREATE TABLE `nozebra` (
+                `server` varchar(20)     NOT NULL,
+                `indexname` varchar(40)  NOT NULL,
+                `value` varchar(250)     NOT NULL,
+                `biblionumbers` longtext NOT NULL,
+                KEY `indexname` (`server`,`indexname`),
+                KEY `value` (`server`,`value`))
+                ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
 -- Table structure for table `opac_news`
 --
 
@@ -1227,17 +1261,17 @@ CREATE TABLE `opac_news` (
 
 DROP TABLE IF EXISTS `overduerules`;
 CREATE TABLE `overduerules` (
-  `branchcode` varchar(255) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
   `categorycode` varchar(2) NOT NULL default '',
-  `delay1` int(4) default '0',
+  `delay1` int(4) default 0,
   `letter1` varchar(20) default NULL,
-  `debarred1` char(1) default '0',
-  `delay2` int(4) default '0',
-  `debarred2` char(1) default '0',
+  `debarred1` varchar(1) default 0,
+  `delay2` int(4) default 0,
+  `debarred2` varchar(1) default 0,
   `letter2` varchar(20) default NULL,
-  `delay3` int(4) default '0',
+  `delay3` int(4) default 0,
   `letter3` varchar(20) default NULL,
-  `debarred3` int(1) default '0',
+  `debarred3` int(1) default 0,
   PRIMARY KEY  (`branchcode`,`categorycode`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -1247,9 +1281,9 @@ CREATE TABLE `overduerules` (
 
 DROP TABLE IF EXISTS `printers`;
 CREATE TABLE `printers` (
-  `printername` char(40) NOT NULL default '''''',
-  `printqueue` char(20) default NULL,
-  `printtype` char(20) default NULL,
+  `printername` varchar(40) NOT NULL default '',
+  `printqueue` varchar(20) default NULL,
+  `printtype` varchar(20) default NULL,
   PRIMARY KEY  (`printername`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -1260,7 +1294,7 @@ CREATE TABLE `printers` (
 DROP TABLE IF EXISTS `repeatable_holidays`;
 CREATE TABLE `repeatable_holidays` (
   `id` int(11) NOT NULL auto_increment,
-  `branchcode` varchar(4) NOT NULL default '',
+  `branchcode` varchar(10) NOT NULL default '',
   `weekday` smallint(6) default NULL,
   `day` smallint(6) default NULL,
   `month` smallint(6) default NULL,
@@ -1275,9 +1309,9 @@ CREATE TABLE `repeatable_holidays` (
 
 DROP TABLE IF EXISTS `reserveconstraints`;
 CREATE TABLE `reserveconstraints` (
-  `borrowernumber` int(11) NOT NULL default '0',
-  `reservedate` date NOT NULL default '0000-00-00',
-  `biblionumber` int(11) NOT NULL default '0',
+  `borrowernumber` int(11) NOT NULL default 0,
+  `reservedate` date default NULL,
+  `biblionumber` int(11) NOT NULL default 0,
   `biblioitemnumber` int(11) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -1288,17 +1322,17 @@ CREATE TABLE `reserveconstraints` (
 
 DROP TABLE IF EXISTS `reserves`;
 CREATE TABLE `reserves` (
-  `borrowernumber` int(11) NOT NULL default '0',
-  `reservedate` date NOT NULL default '0000-00-00',
-  `biblionumber` int(11) NOT NULL default '0',
-  `constrainttype` char(1) default NULL,
-  `branchcode` varchar(4) default NULL,
+  `borrowernumber` int(11) NOT NULL default 0,
+  `reservedate` date default NULL,
+  `biblionumber` int(11) NOT NULL default 0,
+  `constrainttype` varchar(1) default NULL,
+  `branchcode` varchar(10) default NULL,
   `notificationdate` date default NULL,
   `reminderdate` date default NULL,
   `cancellationdate` date default NULL,
   `reservenotes` mediumtext,
   `priority` smallint(6) default NULL,
-  `found` char(1) default NULL,
+  `found` varchar(1) default NULL,
   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `itemnumber` int(11) default NULL,
   `waitingdate` date default NULL,
@@ -1334,7 +1368,7 @@ CREATE TABLE `reviews` (
 DROP TABLE IF EXISTS `roadtype`;
 CREATE TABLE `roadtype` (
   `roadtypeid` int(11) NOT NULL auto_increment,
-  `road_type` char(100) NOT NULL default '',
+  `road_type` varchar(100) NOT NULL default '',
   PRIMARY KEY  (`roadtypeid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -1348,8 +1382,8 @@ CREATE TABLE `serial` (
   `biblionumber` varchar(100) NOT NULL default '',
   `subscriptionid` varchar(100) NOT NULL default '',
   `serialseq` varchar(100) NOT NULL default '',
-  `status` tinyint(4) NOT NULL default '0',
-  `planneddate` date NOT NULL default '0000-00-00',
+  `status` tinyint(4) NOT NULL default 0,
+  `planneddate` date default NULL,
   `notes` text,
   `publisheddate` date default NULL,
   `itemnumber` text,
@@ -1359,44 +1393,14 @@ CREATE TABLE `serial` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `sessionqueries`
---
-
-DROP TABLE IF EXISTS `sessionqueries`;
-CREATE TABLE `sessionqueries` (
-  `sessionID` varchar(255) NOT NULL default '',
-  `userid` varchar(100) NOT NULL default '',
-  `ip` varchar(18) NOT NULL default '',
-  `url` mediumtext NOT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `sessions`
 --
 
-DROP TABLE IF EXISTS `sessions`;
-CREATE TABLE `sessions` (
-  `sessionID` varchar(255) NOT NULL default '',
-  `userid` varchar(255) default NULL,
-  `ip` varchar(16) default NULL,
-  `lasttime` int(11) default NULL,
-  PRIMARY KEY  (`sessionID`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
--- Table structure for table `shelfcontents`
---
-
-DROP TABLE IF EXISTS `shelfcontents`;
-CREATE TABLE `shelfcontents` (
-  `shelfnumber` int(11) NOT NULL default '0',
-  `itemnumber` int(11) NOT NULL default '0',
-  `flags` int(11) default NULL,
-  `dateadded` timestamp NULL default NULL,
-  KEY `shelfnumber` (`shelfnumber`),
-  KEY `itemnumber` (`itemnumber`),
-  CONSTRAINT `shelfcontents_ibfk_1` FOREIGN KEY (`shelfnumber`) REFERENCES `bookshelf` (`shelfnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
-  CONSTRAINT `shelfcontents_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE
+DROP TABLE IF EXISTS sessions;                         
+CREATE TABLE sessions (
+  `id` varchar(32) NOT NULL,
+  `a_session` text NOT NULL,
+  UNIQUE KEY id (id)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -1406,11 +1410,11 @@ CREATE TABLE `shelfcontents` (
 DROP TABLE IF EXISTS `special_holidays`;
 CREATE TABLE `special_holidays` (
   `id` int(11) NOT NULL auto_increment,
-  `branchcode` varchar(4) NOT NULL default '',
-  `day` smallint(6) NOT NULL default '0',
-  `month` smallint(6) NOT NULL default '0',
-  `year` smallint(6) NOT NULL default '0',
-  `isexception` smallint(1) NOT NULL default '1',
+  `branchcode` varchar(10) NOT NULL default '',
+  `day` smallint(6) NOT NULL default 0,
+  `month` smallint(6) NOT NULL default 0,
+  `year` smallint(6) NOT NULL default 0,
+  `isexception` smallint(1) NOT NULL default 1,
   `title` varchar(50) NOT NULL default '',
   `description` text NOT NULL,
   PRIMARY KEY  (`id`)
@@ -1422,15 +1426,15 @@ CREATE TABLE `special_holidays` (
 
 DROP TABLE IF EXISTS `statistics`;
 CREATE TABLE `statistics` (
-  `datetime` datetime NOT NULL default '0000-00-00 00:00:00',
-  `branch` varchar(4) default NULL,
+  `datetime` datetime default NULL,
+  `branch` varchar(10) default NULL,
   `proccode` varchar(4) default NULL,
   `value` double(16,4) default NULL,
   `type` varchar(16) default NULL,
   `other` mediumtext,
   `usercode` varchar(10) default NULL,
   `itemnumber` int(11) default NULL,
-  `itemtype` varchar(4) default NULL,
+  `itemtype` varchar(10) default NULL,
   `borrowernumber` int(11) default NULL,
   `associatedborrower` int(11) default NULL,
   KEY `timeidx` (`datetime`)
@@ -1463,50 +1467,51 @@ CREATE TABLE `subcategorytable` (
 
 DROP TABLE IF EXISTS `subscription`;
 CREATE TABLE `subscription` (
-  `biblionumber` int(11) NOT NULL default '0',
+  `biblionumber` int(11) NOT NULL default 0,
   `subscriptionid` int(11) NOT NULL auto_increment,
   `librarian` varchar(100) default '',
-  `startdate` date default '0000-00-00',
-  `aqbooksellerid` int(11) default '0',
-  `cost` int(11) default '0',
-  `aqbudgetid` int(11) default '0',
-  `weeklength` tinyint(4) default '0',
-  `monthlength` tinyint(4) default '0',
-  `numberlength` tinyint(4) default '0',
-  `periodicity` tinyint(4) default '0',
+  `startdate` date default NULL,
+  `aqbooksellerid` int(11) default 0,
+  `cost` int(11) default 0,
+  `aqbudgetid` int(11) default 0,
+  `weeklength` tinyint(4) default 0,
+  `monthlength` tinyint(4) default 0,
+  `numberlength` tinyint(4) default 0,
+  `periodicity` tinyint(4) default 0,
   `dow` varchar(100) default '',
   `numberingmethod` varchar(100) default '',
   `notes` mediumtext,
   `status` varchar(100) NOT NULL default '',
-  `add1` int(11) default '0',
-  `every1` int(11) default '0',
-  `whenmorethan1` int(11) default '0',
+  `add1` int(11) default 0,
+  `every1` int(11) default 0,
+  `whenmorethan1` int(11) default 0,
   `setto1` int(11) default NULL,
   `lastvalue1` int(11) default NULL,
-  `add2` int(11) default '0',
-  `every2` int(11) default '0',
-  `whenmorethan2` int(11) default '0',
+  `add2` int(11) default 0,
+  `every2` int(11) default 0,
+  `whenmorethan2` int(11) default 0,
   `setto2` int(11) default NULL,
   `lastvalue2` int(11) default NULL,
-  `add3` int(11) default '0',
-  `every3` int(11) default '0',
-  `innerloop1` int(11) default '0',
-  `innerloop2` int(11) default '0',
-  `innerloop3` int(11) default '0',
-  `whenmorethan3` int(11) default '0',
+  `add3` int(11) default 0,
+  `every3` int(11) default 0,
+  `innerloop1` int(11) default 0,
+  `innerloop2` int(11) default 0,
+  `innerloop3` int(11) default 0,
+  `whenmorethan3` int(11) default 0,
   `setto3` int(11) default NULL,
   `lastvalue3` int(11) default NULL,
-  `issuesatonce` tinyint(3) NOT NULL default '1',
-  `firstacquidate` date NOT NULL default '0000-00-00',
-  `manualhistory` tinyint(1) NOT NULL default '0',
+  `issuesatonce` tinyint(3) NOT NULL default 1,
+  `firstacquidate` date default NULL,
+  `manualhistory` tinyint(1) NOT NULL default 0,
   `irregularity` text,
   `letter` varchar(20) default NULL,
-  `numberpattern` tinyint(3) default '0',
+  `numberpattern` tinyint(3) default 0,
   `distributedto` text,
   `internalnotes` longtext,
   `callnumber` text,
-  `branchcode` varchar(12) NOT NULL default '',
-  `hemisphere` tinyint(3) default '0',
+  `branchcode` varchar(10) NOT NULL default '',
+  `hemisphere` tinyint(3) default 0,
+  `lastbranch` varchar(4),
   PRIMARY KEY  (`subscriptionid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -1516,10 +1521,10 @@ CREATE TABLE `subscription` (
 
 DROP TABLE IF EXISTS `subscriptionhistory`;
 CREATE TABLE `subscriptionhistory` (
-  `biblionumber` int(11) NOT NULL default '0',
-  `subscriptionid` int(11) NOT NULL default '0',
-  `histstartdate` date NOT NULL default '0000-00-00',
-  `enddate` date default '0000-00-00',
+  `biblionumber` int(11) NOT NULL default 0,
+  `subscriptionid` int(11) NOT NULL default 0,
+  `histstartdate` date default NULL,
+  `enddate` date default NULL,
   `missinglist` longtext NOT NULL,
   `recievedlist` longtext NOT NULL,
   `opacnote` varchar(150) NOT NULL default '',
@@ -1548,7 +1553,7 @@ CREATE TABLE `subscriptionroutinglist` (
 DROP TABLE IF EXISTS `suggestions`;
 CREATE TABLE `suggestions` (
   `suggestionid` int(8) NOT NULL auto_increment,
-  `suggestedby` int(11) NOT NULL default '0',
+  `suggestedby` int(11) NOT NULL default 0,
   `managedby` int(11) default NULL,
   `STATUS` varchar(10) NOT NULL default '',
   `note` mediumtext,
@@ -1558,10 +1563,10 @@ CREATE TABLE `suggestions` (
   `publishercode` varchar(255) default NULL,
   `date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
   `volumedesc` varchar(255) default NULL,
-  `publicationyear` smallint(6) default '0',
+  `publicationyear` smallint(6) default 0,
   `place` varchar(255) default NULL,
   `isbn` varchar(10) default NULL,
-  `mailoverseeing` smallint(1) default '0',
+  `mailoverseeing` smallint(1) default 0,
   `biblionumber` int(11) default NULL,
   `reason` text,
   PRIMARY KEY  (`suggestionid`),
@@ -1590,99 +1595,50 @@ CREATE TABLE `systempreferences` (
 DROP TABLE IF EXISTS `tags`;
 CREATE TABLE `tags` (
   `entry` varchar(255) NOT NULL default '',
-  `weight` bigint(20) NOT NULL default '0',
+  `weight` bigint(20) NOT NULL default 0,
   PRIMARY KEY  (`entry`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `uploadedmarc`
---
-
-DROP TABLE IF EXISTS `uploadedmarc`;
-CREATE TABLE `uploadedmarc` (
-  `id` int(11) NOT NULL auto_increment,
-  `marc` longblob,
-  `hidden` smallint(6) default NULL,
-  `name` varchar(255) default NULL,
-  PRIMARY KEY  (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
 -- Table structure for table `userflags`
 --
 
 DROP TABLE IF EXISTS `userflags`;
 CREATE TABLE `userflags` (
-  `bit` int(11) NOT NULL default '0',
-  `flag` char(30) default NULL,
-  `flagdesc` char(255) default NULL,
+  `bit` int(11) NOT NULL default 0,
+  `flag` varchar(30) default NULL,
+  `flagdesc` varchar(255) default NULL,
   `defaulton` int(11) default NULL,
   PRIMARY KEY  (`bit`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `users`
---
-
-DROP TABLE IF EXISTS `users`;
-CREATE TABLE `users` (
-  `usercode` varchar(10) default NULL,
-  `username` mediumtext,
-  `password` mediumtext,
-  `level` smallint(6) default NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
--- Table structure for table `websites`
+-- Table structure for table `virtualshelves`
 --
 
-DROP TABLE IF EXISTS `websites`;
-CREATE TABLE `websites` (
-  `websitenumber` int(11) NOT NULL auto_increment,
-  `biblionumber` int(11) NOT NULL default '0',
-  `title` mediumtext,
-  `description` mediumtext,
-  `url` varchar(255) default NULL,
-  PRIMARY KEY  (`websitenumber`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-
---
--- Table structure for table `z3950queue`
---
-
-DROP TABLE IF EXISTS `z3950queue`;
-CREATE TABLE `z3950queue` (
-  `id` int(11) NOT NULL auto_increment,
-  `term` mediumtext,
-  `type` varchar(10) default NULL,
-  `startdate` int(11) default NULL,
-  `enddate` int(11) default NULL,
-  `done` smallint(6) default NULL,
-  `results` longblob,
-  `numrecords` int(11) default NULL,
-  `servers` mediumtext,
-  `identifier` varchar(30) default NULL,
-  PRIMARY KEY  (`id`)
+DROP TABLE IF EXISTS `virtualshelves`;
+CREATE TABLE `virtualshelves` (
+  `shelfnumber` int(11) NOT NULL auto_increment,
+  `shelfname` varchar(255) default NULL,
+  `owner` varchar(80) default NULL,
+  `category` varchar(1) default NULL,
+  PRIMARY KEY  (`shelfnumber`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
--- Table structure for table `z3950results`
+-- Table structure for table `virtualshelfcontents`
 --
 
-DROP TABLE IF EXISTS `z3950results`;
-CREATE TABLE `z3950results` (
-  `id` int(11) NOT NULL auto_increment,
-  `queryid` int(11) default NULL,
-  `server` varchar(255) default NULL,
-  `startdate` int(11) default NULL,
-  `enddate` int(11) default NULL,
-  `results` longblob,
-  `numrecords` int(11) default NULL,
-  `numdownloaded` int(11) default NULL,
-  `highestseen` int(11) default NULL,
-  `active` smallint(6) default NULL,
-  PRIMARY KEY  (`id`),
-  UNIQUE KEY `query_server` (`queryid`,`server`)
+DROP TABLE IF EXISTS `virtualshelfcontents`;
+CREATE TABLE `virtualshelfcontents` (
+  `shelfnumber` int(11) NOT NULL default 0,
+  `biblionumber` int(11) NOT NULL default 0,
+  `flags` int(11) default NULL,
+  `dateadded` timestamp NULL default NULL,
+  KEY `shelfnumber` (`shelfnumber`),
+  KEY `biblionumber` (`biblionumber`),
+  CONSTRAINT `virtualshelfcontents_ibfk_1` FOREIGN KEY (`shelfnumber`) REFERENCES `virtualshelves` (`shelfnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
+  CONSTRAINT `shelfcontents_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 --
@@ -1715,12 +1671,13 @@ CREATE TABLE `z3950servers` (
 DROP TABLE IF EXISTS `zebraqueue`;
 CREATE TABLE `zebraqueue` (
   `id` int(11) NOT NULL auto_increment,
-  `biblio_auth_number` int(11) NOT NULL default '0',
-  `operation` char(20) NOT NULL default '',
-  `server` char(20) NOT NULL default '',
+  `biblio_auth_number` int(11) NOT NULL default 0,
+  `operation` varchar(20) NOT NULL default '',
+  `server` varchar(20) NOT NULL default '',
   PRIMARY KEY  (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
 /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
 /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
 /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;