First installment on moving patronimages into the database.
[koha.git] / installer / data / mysql / kohastructure.sql
1 -- MySQL dump 10.9
2 --
3 -- Host: localhost    Database: koha30test
4 -- ------------------------------------------------------
5 -- Server version       4.1.22
6
7 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
8 /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
9 /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
10 /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
11 /*!40101 SET NAMES utf8 */;
12 /*!40103 SET TIME_ZONE='+00:00' */;
13 /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
14 /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
15 /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
16 /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
17
18 --
19 -- Table structure for table `accountlines`
20 --
21
22 DROP TABLE IF EXISTS `accountlines`;
23 CREATE TABLE `accountlines` (
24   `borrowernumber` int(11) NOT NULL default 0,
25   `accountno` smallint(6) NOT NULL default 0,
26   `itemnumber` int(11) default NULL,
27   `date` date default NULL,
28   `amount` decimal(28,6) default NULL,
29   `description` mediumtext,
30   `dispute` mediumtext,
31   `accounttype` varchar(5) default NULL,
32   `amountoutstanding` decimal(28,6) default NULL,
33   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
34   `notify_id` int(11) NOT NULL default 0,
35   `notify_level` int(2) NOT NULL default 0,
36   KEY `acctsborridx` (`borrowernumber`),
37   KEY `timeidx` (`timestamp`),
38   KEY `itemnumber` (`itemnumber`),
39   CONSTRAINT `accountlines_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
40   CONSTRAINT `accountlines_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL
41 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
42
43 --
44 -- Table structure for table `accountoffsets`
45 --
46
47 DROP TABLE IF EXISTS `accountoffsets`;
48 CREATE TABLE `accountoffsets` (
49   `borrowernumber` int(11) NOT NULL default 0,
50   `accountno` smallint(6) NOT NULL default 0,
51   `offsetaccount` smallint(6) NOT NULL default 0,
52   `offsetamount` decimal(28,6) default NULL,
53   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
54   CONSTRAINT `accountoffsets_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE
55 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
56
57 --
58 -- Table structure for table `action_logs`
59 --
60
61 DROP TABLE IF EXISTS `action_logs`;
62 CREATE TABLE `action_logs` (
63   `action_id` int(11) NOT NULL auto_increment,
64   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
65   `user` int(11) NOT NULL default 0,
66   `module` text,
67   `action` text,
68   `object` int(11) default NULL,
69   `info` text,
70   PRIMARY KEY (`action_id`),
71   KEY  (`timestamp`,`user`)
72 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
73
74 --
75 -- Table structure for table `alert`
76 --
77
78 DROP TABLE IF EXISTS `alert`;
79 CREATE TABLE `alert` (
80   `alertid` int(11) NOT NULL auto_increment,
81   `borrowernumber` int(11) NOT NULL default 0,
82   `type` varchar(10) NOT NULL default '',
83   `externalid` varchar(20) NOT NULL default '',
84   PRIMARY KEY  (`alertid`),
85   KEY `borrowernumber` (`borrowernumber`),
86   KEY `type` (`type`,`externalid`)
87 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
88
89 --
90 -- Table structure for table `aqbasket`
91 --
92
93 DROP TABLE IF EXISTS `aqbasket`;
94 CREATE TABLE `aqbasket` (
95   `basketno` int(11) NOT NULL auto_increment,
96   `creationdate` date default NULL,
97   `closedate` date default NULL,
98   `booksellerid` int(11) NOT NULL default 1,
99   `authorisedby` varchar(10) default NULL,
100   `booksellerinvoicenumber` mediumtext,
101   PRIMARY KEY  (`basketno`),
102   KEY `booksellerid` (`booksellerid`),
103   CONSTRAINT `aqbasket_ibfk_1` FOREIGN KEY (`booksellerid`) REFERENCES `aqbooksellers` (`id`) ON UPDATE CASCADE
104 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
105
106 --
107 -- Table structure for table `aqbookfund`
108 --
109
110 DROP TABLE IF EXISTS `aqbookfund`;
111 CREATE TABLE `aqbookfund` (
112   `bookfundid` varchar(10) NOT NULL default '',
113   `bookfundname` mediumtext,
114   `bookfundgroup` varchar(5) default NULL,
115   `branchcode` varchar(10) NOT NULL default '',
116   PRIMARY KEY  (`bookfundid`,`branchcode`)
117 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
118
119 --
120 -- Table structure for table `aqbooksellers`
121 --
122
123 DROP TABLE IF EXISTS `aqbooksellers`;
124 CREATE TABLE `aqbooksellers` (
125   `id` int(11) NOT NULL auto_increment,
126   `name` mediumtext,
127   `address1` mediumtext,
128   `address2` mediumtext,
129   `address3` mediumtext,
130   `address4` mediumtext,
131   `phone` varchar(30) default NULL,
132   `accountnumber` mediumtext,
133   `othersupplier` mediumtext,
134   `currency` varchar(3) NOT NULL default '',
135   `deliverydays` smallint(6) default NULL,
136   `followupdays` smallint(6) default NULL,
137   `followupscancel` smallint(6) default NULL,
138   `specialty` mediumtext,
139   `booksellerfax` mediumtext,
140   `notes` mediumtext,
141   `bookselleremail` mediumtext,
142   `booksellerurl` mediumtext,
143   `contact` varchar(100) default NULL,
144   `postal` mediumtext,
145   `url` varchar(255) default NULL,
146   `contpos` varchar(100) default NULL,
147   `contphone` varchar(100) default NULL,
148   `contfax` varchar(100) default NULL,
149   `contaltphone` varchar(100) default NULL,
150   `contemail` varchar(100) default NULL,
151   `contnotes` mediumtext,
152   `active` tinyint(4) default NULL,
153   `listprice` varchar(10) default NULL,
154   `invoiceprice` varchar(10) default NULL,
155   `gstreg` tinyint(4) default NULL,
156   `listincgst` tinyint(4) default NULL,
157   `invoiceincgst` tinyint(4) default NULL,
158   `discount` float(6,4) default NULL,
159   `fax` varchar(50) default NULL,
160   `nocalc` int(11) default NULL,
161   `invoicedisc` float(6,4) default NULL,
162   PRIMARY KEY  (`id`),
163   KEY `listprice` (`listprice`),
164   KEY `invoiceprice` (`invoiceprice`),
165   CONSTRAINT `aqbooksellers_ibfk_1` FOREIGN KEY (`listprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE,
166   CONSTRAINT `aqbooksellers_ibfk_2` FOREIGN KEY (`invoiceprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE
167 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
168
169 --
170 -- Table structure for table `aqbudget`
171 --
172
173 DROP TABLE IF EXISTS `aqbudget`;
174 CREATE TABLE `aqbudget` (
175   `bookfundid` varchar(10) NOT NULL default '',
176   `startdate` date NOT NULL default 0,
177   `enddate` date default NULL,
178   `budgetamount` decimal(13,2) default NULL,
179   `aqbudgetid` tinyint(4) NOT NULL auto_increment,
180   `branchcode` varchar(10) default NULL,
181   PRIMARY KEY  (`aqbudgetid`)
182 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
183
184 --
185 -- Table structure for table `aqorderbreakdown`
186 --
187
188 DROP TABLE IF EXISTS `aqorderbreakdown`;
189 CREATE TABLE `aqorderbreakdown` (
190   `ordernumber` int(11) default NULL,
191   `linenumber` int(11) default NULL,
192   `branchcode` varchar(10) default NULL,
193   `bookfundid` varchar(10) NOT NULL default '',
194   `allocation` smallint(6) default NULL,
195   KEY `ordernumber` (`ordernumber`),
196   KEY `bookfundid` (`bookfundid`),
197   CONSTRAINT `aqorderbreakdown_ibfk_1` FOREIGN KEY (`ordernumber`) REFERENCES `aqorders` (`ordernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
198   CONSTRAINT `aqorderbreakdown_ibfk_2` FOREIGN KEY (`bookfundid`) REFERENCES `aqbookfund` (`bookfundid`) ON DELETE CASCADE ON UPDATE CASCADE
199 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
200
201 --
202 -- Table structure for table `aqorderdelivery`
203 --
204
205 DROP TABLE IF EXISTS `aqorderdelivery`;
206 CREATE TABLE `aqorderdelivery` (
207   `ordernumber` date default NULL,
208   `deliverynumber` smallint(6) NOT NULL default 0,
209   `deliverydate` varchar(18) default NULL,
210   `qtydelivered` smallint(6) default NULL,
211   `deliverycomments` mediumtext
212 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
213
214 --
215 -- Table structure for table `aqorders`
216 --
217
218 DROP TABLE IF EXISTS `aqorders`;
219 CREATE TABLE `aqorders` (
220   `ordernumber` int(11) NOT NULL auto_increment,
221   `biblionumber` int(11) default NULL,
222   `title` mediumtext,
223   `entrydate` date default NULL,
224   `quantity` smallint(6) default NULL,
225   `currency` varchar(3) default NULL,
226   `listprice` decimal(28,6) default NULL,
227   `totalamount` decimal(28,6) default NULL,
228   `datereceived` date default NULL,
229   `booksellerinvoicenumber` mediumtext,
230   `freight` decimal(28,6) default NULL,
231   `unitprice` decimal(28,6) default NULL,
232   `quantityreceived` smallint(6) default NULL,
233   `cancelledby` varchar(10) default NULL,
234   `datecancellationprinted` date default NULL,
235   `notes` mediumtext,
236   `supplierreference` mediumtext,
237   `purchaseordernumber` mediumtext,
238   `subscription` tinyint(1) default NULL,
239   `serialid` varchar(30) default NULL,
240   `basketno` int(11) default NULL,
241   `biblioitemnumber` int(11) default NULL,
242   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
243   `rrp` decimal(13,2) default NULL,
244   `ecost` decimal(13,2) default NULL,
245   `gst` decimal(13,2) default NULL,
246   `budgetdate` date default NULL,
247   `sort1` varchar(80) default NULL,
248   `sort2` varchar(80) default NULL,
249   PRIMARY KEY  (`ordernumber`),
250   KEY `basketno` (`basketno`),
251   KEY `biblionumber` (`biblionumber`),
252   CONSTRAINT `aqorders_ibfk_1` FOREIGN KEY (`basketno`) REFERENCES `aqbasket` (`basketno`) ON DELETE CASCADE ON UPDATE CASCADE,
253   CONSTRAINT `aqorders_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE SET NULL ON UPDATE SET NULL
254 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
255
256 --
257 -- Table structure for table `auth_header`
258 --
259
260 DROP TABLE IF EXISTS `auth_header`;
261 CREATE TABLE `auth_header` (
262   `authid` bigint(20) unsigned NOT NULL auto_increment,
263   `authtypecode` varchar(10) NOT NULL default '',
264   `datecreated` date default NULL,
265   `datemodified` date default NULL,
266   `origincode` varchar(20) default NULL,
267   `authtrees` mediumtext,
268   `marc` blob,
269   `linkid` bigint(20) default NULL,
270   `marcxml` longtext NOT NULL,
271   PRIMARY KEY  (`authid`),
272   KEY `origincode` (`origincode`)
273 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
274
275 --
276 -- Table structure for table `auth_subfield_structure`
277 --
278
279 DROP TABLE IF EXISTS `auth_subfield_structure`;
280 CREATE TABLE `auth_subfield_structure` (
281   `authtypecode` varchar(10) NOT NULL default '',
282   `tagfield` varchar(3) NOT NULL default '',
283   `tagsubfield` varchar(1) NOT NULL default '',
284   `liblibrarian` varchar(255) NOT NULL default '',
285   `libopac` varchar(255) NOT NULL default '',
286   `repeatable` tinyint(4) NOT NULL default 0,
287   `mandatory` tinyint(4) NOT NULL default 0,
288   `tab` tinyint(1) default NULL,
289   `authorised_value` varchar(10) default NULL,
290   `value_builder` varchar(80) default NULL,
291   `seealso` varchar(255) default NULL,
292   `isurl` tinyint(1) default NULL,
293   `hidden` tinyint(3) NOT NULL default 0,
294   `linkid` tinyint(1) NOT NULL default 0,
295   `kohafield` varchar(45) NULL default '',
296   `frameworkcode` varchar(8) NOT NULL default '',
297   PRIMARY KEY  (`authtypecode`,`tagfield`,`tagsubfield`),
298   KEY `tab` (`authtypecode`,`tab`)
299 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
300
301 --
302 -- Table structure for table `auth_tag_structure`
303 --
304
305 DROP TABLE IF EXISTS `auth_tag_structure`;
306 CREATE TABLE `auth_tag_structure` (
307   `authtypecode` varchar(10) NOT NULL default '',
308   `tagfield` varchar(3) NOT NULL default '',
309   `liblibrarian` varchar(255) NOT NULL default '',
310   `libopac` varchar(255) NOT NULL default '',
311   `repeatable` tinyint(4) NOT NULL default 0,
312   `mandatory` tinyint(4) NOT NULL default 0,
313   `authorised_value` varchar(10) default NULL,
314   PRIMARY KEY  (`authtypecode`,`tagfield`),
315   CONSTRAINT `auth_tag_structure_ibfk_1` FOREIGN KEY (`authtypecode`) REFERENCES `auth_types` (`authtypecode`) ON DELETE CASCADE ON UPDATE CASCADE
316 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
317
318 --
319 -- Table structure for table `auth_types`
320 --
321
322 DROP TABLE IF EXISTS `auth_types`;
323 CREATE TABLE `auth_types` (
324   `authtypecode` varchar(10) NOT NULL default '',
325   `authtypetext` varchar(255) NOT NULL default '',
326   `auth_tag_to_report` varchar(3) NOT NULL default '',
327   `summary` mediumtext NOT NULL,
328   PRIMARY KEY  (`authtypecode`)
329 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
330
331 --
332 -- Table structure for table `authorised_values`
333 --
334
335 DROP TABLE IF EXISTS `authorised_values`;
336 CREATE TABLE `authorised_values` (
337   `id` int(11) NOT NULL auto_increment,
338   `category` varchar(10) NOT NULL default '',
339   `authorised_value` varchar(80) NOT NULL default '',
340   `lib` varchar(80) default NULL,
341   PRIMARY KEY  (`id`),
342   KEY `name` (`category`)
343 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
344
345 --
346 -- Table structure for table `biblio`
347 --
348
349 DROP TABLE IF EXISTS `biblio`;
350 CREATE TABLE `biblio` (
351   `biblionumber` int(11) NOT NULL auto_increment,
352   `frameworkcode` varchar(4) NOT NULL default '',
353   `author` mediumtext,
354   `title` mediumtext,
355   `unititle` mediumtext,
356   `notes` mediumtext,
357   `serial` tinyint(1) default NULL,
358   `seriestitle` mediumtext,
359   `copyrightdate` smallint(6) default NULL,
360   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
361   `datecreated` DATE NOT NULL,
362   `abstract` mediumtext,
363   PRIMARY KEY  (`biblionumber`),
364   KEY `blbnoidx` (`biblionumber`)
365 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
366
367 --
368 -- Table structure for table `biblio_framework`
369 --
370
371 DROP TABLE IF EXISTS `biblio_framework`;
372 CREATE TABLE `biblio_framework` (
373   `frameworkcode` varchar(4) NOT NULL default '',
374   `frameworktext` varchar(255) NOT NULL default '',
375   PRIMARY KEY  (`frameworkcode`)
376 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
377
378 --
379 -- Table structure for table `biblioitems`
380 --
381
382 DROP TABLE IF EXISTS `biblioitems`;
383 CREATE TABLE `biblioitems` (
384   `biblioitemnumber` int(11) NOT NULL auto_increment,
385   `biblionumber` int(11) NOT NULL default 0,
386   `volume` mediumtext,
387   `number` mediumtext,
388   `itemtype` varchar(10) default NULL,
389   `isbn` varchar(14) default NULL,
390   `issn` varchar(9) default NULL,
391   `publicationyear` text,
392   `publishercode` varchar(255) default NULL,
393   `volumedate` date default NULL,
394   `volumedesc` text,
395   `collectiontitle` mediumtext default NULL,
396   `collectionissn` text default NULL,
397   `collectionvolume` mediumtext default NULL,
398   `editionstatement` text default NULL,
399   `editionresponsibility` text default NULL,
400   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
401   `illus` varchar(255) default NULL,
402   `pages` varchar(255) default NULL,
403   `notes` mediumtext,
404   `size` varchar(255) default NULL,
405   `place` varchar(255) default NULL,
406   `lccn` varchar(25) default NULL,
407   `marc` longblob,
408   `url` varchar(255) default NULL,
409   `cn_source` varchar(10) default NULL,
410   `cn_class` varchar(30) default NULL,
411   `cn_item` varchar(10) default NULL,
412   `cn_suffix` varchar(10) default NULL,
413   `cn_sort` varchar(30) default NULL,
414   `totalissues` int(10),
415   `marcxml` longtext NOT NULL,
416   PRIMARY KEY  (`biblioitemnumber`),
417   KEY `bibinoidx` (`biblioitemnumber`),
418   KEY `bibnoidx` (`biblionumber`),
419   KEY `isbn` (`isbn`),
420   KEY `publishercode` (`publishercode`),
421   CONSTRAINT `biblioitems_ibfk_1` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
422 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
423
424 --
425 -- Table structure for table `borrowers`
426 --
427
428 DROP TABLE IF EXISTS `borrowers`;
429 CREATE TABLE `borrowers` (
430   `borrowernumber` int(11) NOT NULL auto_increment,
431   `cardnumber` varchar(16) default NULL,
432   `surname` mediumtext NOT NULL,
433   `firstname` text,
434   `title` mediumtext,
435   `othernames` mediumtext,
436   `initials` text,
437   `streetnumber` varchar(10) default NULL,
438   `streettype` varchar(50) default NULL,
439   `address` mediumtext NOT NULL,
440   `address2` text,
441   `city` mediumtext NOT NULL,
442   `zipcode` varchar(25) default NULL,
443   `email` mediumtext,
444   `phone` text,
445   `mobile` varchar(50) default NULL,
446   `fax` mediumtext,
447   `emailpro` text,
448   `phonepro` text,
449   `B_streetnumber` varchar(10) default NULL,
450   `B_streettype` varchar(50) default NULL,
451   `B_address` varchar(100) default NULL,
452   `B_city` mediumtext,
453   `B_zipcode` varchar(25) default NULL,
454   `B_email` text,
455   `B_phone` mediumtext,
456   `dateofbirth` date default NULL,
457   `branchcode` varchar(10) NOT NULL default '',
458   `categorycode` varchar(10) NOT NULL default '',
459   `dateenrolled` date default NULL,
460   `dateexpiry` date default NULL,
461   `gonenoaddress` tinyint(1) default NULL,
462   `lost` tinyint(1) default NULL,
463   `debarred` tinyint(1) default NULL,
464   `contactname` mediumtext,
465   `contactfirstname` text,
466   `contacttitle` text,
467   `guarantorid` int(11) default NULL,
468   `borrowernotes` mediumtext,
469   `relationship` varchar(100) default NULL,
470   `ethnicity` varchar(50) default NULL,
471   `ethnotes` varchar(255) default NULL,
472   `sex` varchar(1) default NULL,
473   `password` varchar(30) default NULL,
474   `flags` int(11) default NULL,
475   `userid` varchar(30) default NULL,
476   `opacnote` mediumtext,
477   `contactnote` varchar(255) default NULL,
478   `sort1` varchar(80) default NULL,
479   `sort2` varchar(80) default NULL,
480   `altcontactfirstname` varchar(255) default NULL,
481   `altcontactsurname` varchar(255) default NULL,
482   `altcontactaddress1` varchar(255) default NULL,
483   `altcontactaddress2` varchar(255) default NULL,
484   `altcontactaddress3` varchar(255) default NULL,
485   `altcontactzipcode` varchar(50) default NULL,
486   `altcontactphone` varchar(50) default NULL,
487   UNIQUE KEY `cardnumber` (`cardnumber`),
488   PRIMARY KEY `borrowernumber` (`borrowernumber`),
489   KEY `categorycode` (`categorycode`),
490   KEY `branchcode` (`branchcode`),
491   KEY `userid` (`userid`),
492   CONSTRAINT `borrowers_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`),
493   CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
494 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
495
496 --
497 -- Table structure for table `branchcategories`
498 --
499
500 DROP TABLE IF EXISTS `branchcategories`;
501 CREATE TABLE `branchcategories` (
502   `categorycode` varchar(10) NOT NULL default '',
503   `categoryname` varchar(32),
504   `codedescription` mediumtext,
505   `categorytype` varchar(16),
506   PRIMARY KEY  (`categorycode`)
507 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
508
509 --
510 -- Table structure for table `branches`
511 --
512
513 DROP TABLE IF EXISTS `branches`;
514 CREATE TABLE `branches` (
515   `branchcode` varchar(10) NOT NULL default '',
516   `branchname` mediumtext NOT NULL,
517   `branchaddress1` mediumtext,
518   `branchaddress2` mediumtext,
519   `branchaddress3` mediumtext,
520   `branchphone` mediumtext,
521   `branchfax` mediumtext,
522   `branchemail` mediumtext,
523   `issuing` tinyint(4) default NULL,
524   `branchip` varchar(15) default NULL,
525   `branchprinter` varchar(100) default NULL,
526   UNIQUE KEY `branchcode` (`branchcode`)
527 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
528
529 --
530 -- Table structure for table `branchrelations`
531 --
532
533 DROP TABLE IF EXISTS `branchrelations`;
534 CREATE TABLE `branchrelations` (
535   `branchcode` varchar(10) NOT NULL default '',
536   `categorycode` varchar(10) NOT NULL default '',
537   PRIMARY KEY  (`branchcode`,`categorycode`),
538   KEY `branchcode` (`branchcode`),
539   KEY `categorycode` (`categorycode`),
540   CONSTRAINT `branchrelations_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
541   CONSTRAINT `branchrelations_ibfk_2` FOREIGN KEY (`categorycode`) REFERENCES `branchcategories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE
542 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
543
544 --
545 -- Table structure for table `branchtransfers`
546 --
547
548 DROP TABLE IF EXISTS `branchtransfers`;
549 CREATE TABLE `branchtransfers` (
550   `itemnumber` int(11) NOT NULL default 0,
551   `datesent` datetime default NULL,
552   `frombranch` varchar(10) NOT NULL default '',
553   `datearrived` datetime default NULL,
554   `tobranch` varchar(10) NOT NULL default '',
555   `comments` mediumtext,
556   KEY `frombranch` (`frombranch`),
557   KEY `tobranch` (`tobranch`),
558   KEY `itemnumber` (`itemnumber`),
559   CONSTRAINT `branchtransfers_ibfk_1` FOREIGN KEY (`frombranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
560   CONSTRAINT `branchtransfers_ibfk_2` FOREIGN KEY (`tobranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
561   CONSTRAINT `branchtransfers_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE
562 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
563
564
565 --
566 -- Table structure for table `browser`
567 --
568 DROP TABLE IF EXISTS `browser`;
569 CREATE TABLE `browser` (
570   `level` int(11) NOT NULL,
571   `classification` varchar(20) NOT NULL,
572   `description` varchar(255) NOT NULL,
573   `number` bigint(20) NOT NULL,
574   `endnode` tinyint(4) NOT NULL
575 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
576
577 --
578 -- Table structure for table `categories`
579 --
580
581 DROP TABLE IF EXISTS `categories`;
582 CREATE TABLE `categories` (
583   `categorycode` varchar(10) NOT NULL default '',
584   `description` mediumtext,
585   `enrolmentperiod` smallint(6) default NULL,
586   `upperagelimit` smallint(6) default NULL,
587   `dateofbirthrequired` tinyint(1) default NULL,
588   `finetype` varchar(30) default NULL,
589   `bulk` tinyint(1) default NULL,
590   `enrolmentfee` decimal(28,6) default NULL,
591   `overduenoticerequired` tinyint(1) default NULL,
592   `issuelimit` smallint(6) default NULL,
593   `reservefee` decimal(28,6) default NULL,
594   `category_type` varchar(1) NOT NULL default 'A',
595   PRIMARY KEY  (`categorycode`),
596   UNIQUE KEY `categorycode` (`categorycode`)
597 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
598
599 --
600 -- Table structure for table `categorytable`
601 --
602
603 DROP TABLE IF EXISTS `categorytable`;
604 CREATE TABLE `categorytable` (
605   `categorycode` varchar(5) NOT NULL default '',
606   `description` text,
607   `itemtypecodes` text,
608   PRIMARY KEY  (`categorycode`)
609 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
610
611 --
612 -- Table structure for table `cities`
613 --
614
615 DROP TABLE IF EXISTS `cities`;
616 CREATE TABLE `cities` (
617   `cityid` int(11) NOT NULL auto_increment,
618   `city_name` varchar(100) NOT NULL default '',
619   `city_zipcode` varchar(20) default NULL,
620   PRIMARY KEY  (`cityid`)
621 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
622
623 --
624 -- Table structure for table `class_sort_rules`
625 --
626
627 DROP TABLE IF EXISTS `class_sort_rules`;
628 CREATE TABLE `class_sort_rules` (
629   `class_sort_rule` varchar(10) NOT NULL default '',
630   `description` mediumtext,
631   `sort_routine` varchar(30) NOT NULL default '',
632   PRIMARY KEY (`class_sort_rule`),
633   UNIQUE KEY `class_sort_rule_idx` (`class_sort_rule`)
634 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
635
636 --
637 -- Table structure for table `class_sources`
638 --
639
640 DROP TABLE IF EXISTS `class_sources`;
641 CREATE TABLE `class_sources` (
642   `cn_source` varchar(10) NOT NULL default '',
643   `description` mediumtext,
644   `used` tinyint(4) NOT NULL default 0,
645   `class_sort_rule` varchar(10) NOT NULL default '',
646   PRIMARY KEY (`cn_source`),
647   UNIQUE KEY `cn_source_idx` (`cn_source`),
648   KEY `used_idx` (`used`),
649   CONSTRAINT `class_source_ibfk_1` FOREIGN KEY (`class_sort_rule`) REFERENCES `class_sort_rules` (`class_sort_rule`)
650 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
651
652 --
653 -- Table structure for table `currency`
654 --
655
656 DROP TABLE IF EXISTS `currency`;
657 CREATE TABLE `currency` (
658   `currency` varchar(10) NOT NULL default '',
659   `symbol` varchar(5) default NULL,
660   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
661   `rate` float(7,5) default NULL,
662   PRIMARY KEY  (`currency`)
663 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
664
665 --
666 -- Table structure for table `deletedbiblio`
667 --
668
669 DROP TABLE IF EXISTS `deletedbiblio`;
670 CREATE TABLE `deletedbiblio` (
671   `biblionumber` int(11) NOT NULL default 0,
672   `frameworkcode` varchar(4) NOT NULL default '',
673   `author` mediumtext,
674   `title` mediumtext,
675   `unititle` mediumtext,
676   `notes` mediumtext,
677   `serial` tinyint(1) default NULL,
678   `seriestitle` mediumtext,
679   `copyrightdate` smallint(6) default NULL,
680   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
681   `datecreated` DATE NOT NULL,
682   `abstract` mediumtext,
683   PRIMARY KEY  (`biblionumber`),
684   KEY `blbnoidx` (`biblionumber`)
685 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
686
687 --
688 -- Table structure for table `deletedbiblioitems`
689 --
690
691 DROP TABLE IF EXISTS `deletedbiblioitems`;
692 CREATE TABLE `deletedbiblioitems` (
693   `biblioitemnumber` int(11) NOT NULL default 0,
694   `biblionumber` int(11) NOT NULL default 0,
695   `volume` mediumtext,
696   `number` mediumtext,
697   `itemtype` varchar(10) default NULL,
698   `isbn` varchar(14) default NULL,
699   `issn` varchar(9) default NULL,
700   `publicationyear` text,
701   `publishercode` varchar(255) default NULL,
702   `volumedate` date default NULL,
703   `volumedesc` text,
704   `collectiontitle` mediumtext default NULL,
705   `collectionissn` text default NULL,
706   `collectionvolume` mediumtext default NULL,
707   `editionstatement` text default NULL,
708   `editionresponsibility` text default NULL,
709   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
710   `illus` varchar(255) default NULL,
711   `pages` varchar(255) default NULL,
712   `notes` mediumtext,
713   `size` varchar(255) default NULL,
714   `place` varchar(255) default NULL,
715   `lccn` varchar(25) default NULL,
716   `marc` longblob,
717   `url` varchar(255) default NULL,
718   `cn_source` varchar(10) default NULL,
719   `cn_class` varchar(30) default NULL,
720   `cn_item` varchar(10) default NULL,
721   `cn_suffix` varchar(10) default NULL,
722   `cn_sort` varchar(30) default NULL,
723   `totalissues` int(10),
724   `marcxml` longtext NOT NULL,
725   PRIMARY KEY  (`biblioitemnumber`),
726   KEY `bibinoidx` (`biblioitemnumber`),
727   KEY `bibnoidx` (`biblionumber`),
728   KEY `isbn` (`isbn`),
729   KEY `publishercode` (`publishercode`)
730 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
731
732 --
733 -- Table structure for table `deletedborrowers`
734 --
735
736 DROP TABLE IF EXISTS `deletedborrowers`;
737 CREATE TABLE `deletedborrowers` (
738   `borrowernumber` int(11) NOT NULL default 0,
739   `cardnumber` varchar(9) NOT NULL default '',
740   `surname` mediumtext NOT NULL,
741   `firstname` text,
742   `title` mediumtext,
743   `othernames` mediumtext,
744   `initials` text,
745   `streetnumber` varchar(10) default NULL,
746   `streettype` varchar(50) default NULL,
747   `address` mediumtext NOT NULL,
748   `address2` text,
749   `city` mediumtext NOT NULL,
750   `zipcode` varchar(25) default NULL,
751   `email` mediumtext,
752   `phone` text,
753   `mobile` varchar(50) default NULL,
754   `fax` mediumtext,
755   `emailpro` text,
756   `phonepro` text,
757   `B_streetnumber` varchar(10) default NULL,
758   `B_streettype` varchar(50) default NULL,
759   `B_address` varchar(100) default NULL,
760   `B_city` mediumtext,
761   `B_zipcode` varchar(25) default NULL,
762   `B_email` text,
763   `B_phone` mediumtext,
764   `dateofbirth` date default NULL,
765   `branchcode` varchar(10) NOT NULL default '',
766   `categorycode` varchar(2) default NULL,
767   `dateenrolled` date default NULL,
768   `dateexpiry` date default NULL,
769   `gonenoaddress` tinyint(1) default NULL,
770   `lost` tinyint(1) default NULL,
771   `debarred` tinyint(1) default NULL,
772   `contactname` mediumtext,
773   `contactfirstname` text,
774   `contacttitle` text,
775   `guarantorid` int(11) default NULL,
776   `borrowernotes` mediumtext,
777   `relationship` varchar(100) default NULL,
778   `ethnicity` varchar(50) default NULL,
779   `ethnotes` varchar(255) default NULL,
780   `sex` varchar(1) default NULL,
781   `password` varchar(30) default NULL,
782   `flags` int(11) default NULL,
783   `userid` varchar(30) default NULL,
784   `opacnote` mediumtext,
785   `contactnote` varchar(255) default NULL,
786   `sort1` varchar(80) default NULL,
787   `sort2` varchar(80) default NULL,
788   `altcontactfirstname` varchar(255) default NULL,
789   `altcontactsurname` varchar(255) default NULL,
790   `altcontactaddress1` varchar(255) default NULL,
791   `altcontactaddress2` varchar(255) default NULL,
792   `altcontactaddress3` varchar(255) default NULL,
793   `altcontactzipcode` varchar(50) default NULL,
794   `altcontactphone` varchar(50) default NULL,
795   KEY `borrowernumber` (`borrowernumber`),
796   KEY `cardnumber` (`cardnumber`)
797 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
798
799 --
800 -- Table structure for table `deleteditems`
801 --
802
803 DROP TABLE IF EXISTS `deleteditems`;
804 CREATE TABLE `deleteditems` (
805   `itemnumber` int(11) NOT NULL default 0,
806   `biblionumber` int(11) NOT NULL default 0,
807   `biblioitemnumber` int(11) NOT NULL default 0,
808   `barcode` varchar(20) default NULL,
809   `dateaccessioned` date default NULL,
810   `booksellerid` varchar(10) default NULL,
811   `homebranch` varchar(10) default NULL,
812   `price` decimal(8,2) default NULL,
813   `replacementprice` decimal(8,2) default NULL,
814   `replacementpricedate` date default NULL,
815   `datelastborrowed` date default NULL,
816   `datelastseen` date default NULL,
817   `stack` tinyint(1) default NULL,
818   `notforloan` tinyint(1) NOT NULL default 0,
819   `damaged` tinyint(1) NOT NULL default 0,
820   `itemlost` tinyint(1) NOT NULL default 0,
821   `wthdrawn` tinyint(1) NOT NULL default 0,
822   `itemcallnumber` varchar(30) default NULL,
823   `issues` smallint(6) default NULL,
824   `renewals` smallint(6) default NULL,
825   `reserves` smallint(6) default NULL,
826   `restricted` tinyint(1) default NULL,
827   `itemnotes` mediumtext,
828   `holdingbranch` varchar(10) default NULL,
829   `paidfor` mediumtext,
830   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
831   `location` varchar(80) default NULL,
832   `onloan` date default NULL,
833   `cn_source` varchar(10) default NULL,
834   `cn_sort` varchar(30) default NULL,
835   `ccode` varchar(10) default NULL,
836   `materials` varchar(10) default NULL,
837   `uri` varchar(255) default NULL,
838   `itype` varchar(10) default NULL,
839   `more_subfields_xml` longtext default NULL,
840   `marc` longblob,
841   PRIMARY KEY  (`itemnumber`),
842   KEY `delitembarcodeidx` (`barcode`),
843   KEY `delitembinoidx` (`biblioitemnumber`),
844   KEY `delitembibnoidx` (`biblionumber`),
845   KEY `delhomebranch` (`homebranch`),
846   KEY `delholdingbranch` (`holdingbranch`)
847 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
848
849 --
850 -- Table structure for table `ethnicity`
851 --
852
853 DROP TABLE IF EXISTS `ethnicity`;
854 CREATE TABLE `ethnicity` (
855   `code` varchar(10) NOT NULL default '',
856   `name` varchar(255) default NULL,
857   PRIMARY KEY  (`code`)
858 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
859
860 --
861 -- Table structure for table `import_batches`
862 --
863
864 DROP TABLE IF EXISTS `import_batches`;
865 CREATE TABLE `import_batches` (
866   `import_batch_id` int(11) NOT NULL auto_increment,
867   `matcher_id` int(11) default NULL,
868   `template_id` int(11) default NULL,
869   `branchcode` varchar(10) default NULL,
870   `num_biblios` int(11) NOT NULL default 0,
871   `num_items` int(11) NOT NULL default 0,
872   `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
873   `overlay_action` enum('replace', 'create_new', 'use_template') NOT NULL default 'create_new',
874   `import_status` enum('staging', 'staged', 'importing', 'imported', 'reverting', 'reverted', 'cleaned') NOT NULL default 'staging',
875   `batch_type` enum('batch', 'z3950') NOT NULL default 'batch',
876   `file_name` varchar(100),
877   `comments` mediumtext,
878   PRIMARY KEY (`import_batch_id`),
879   KEY `branchcode` (`branchcode`)
880 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
881
882 --
883 -- Table structure for table `import_records`
884 --
885
886 DROP TABLE IF EXISTS `import_records`;
887 CREATE TABLE `import_records` (
888   `import_record_id` int(11) NOT NULL auto_increment,
889   `import_batch_id` int(11) NOT NULL,
890   `branchcode` varchar(10) default NULL,
891   `record_sequence` int(11) NOT NULL default 0,
892   `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
893   `import_date` DATE default NULL,
894   `marc` longblob NOT NULL,
895   `marcxml` longtext NOT NULL,
896   `marcxml_old` longtext NOT NULL,
897   `record_type` enum('biblio', 'auth', 'holdings') NOT NULL default 'biblio',
898   `overlay_status` enum('no_match', 'auto_match', 'manual_match', 'match_applied') NOT NULL default 'no_match',
899   `status` enum('error', 'staged', 'imported', 'reverted', 'items_reverted') NOT NULL default 'staged',
900   `import_error` mediumtext,
901   `encoding` varchar(40) NOT NULL default '',
902   `z3950random` varchar(40) default NULL,
903   PRIMARY KEY (`import_record_id`),
904   CONSTRAINT `import_records_ifbk_1` FOREIGN KEY (`import_batch_id`)
905              REFERENCES `import_batches` (`import_batch_id`) ON DELETE CASCADE ON UPDATE CASCADE,
906   KEY `branchcode` (`branchcode`),
907   KEY `batch_sequence` (`import_batch_id`, `record_sequence`)
908 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
909
910 --
911 -- Table structure for `import_record_matches`
912 --
913 DROP TABLE IF EXISTS `import_record_matches`;
914 CREATE TABLE `import_record_matches` (
915   `import_record_id` int(11) NOT NULL,
916   `candidate_match_id` int(11) NOT NULL,
917   `score` int(11) NOT NULL default 0,
918   CONSTRAINT `import_record_matches_ibfk_1` FOREIGN KEY (`import_record_id`) 
919              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
920   KEY `record_score` (`import_record_id`, `score`)
921 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
922
923 --
924 -- Table structure for table `import_biblios`
925 --
926
927 DROP TABLE IF EXISTS `import_biblios`;
928 CREATE TABLE `import_biblios` (
929   `import_record_id` int(11) NOT NULL,
930   `matched_biblionumber` int(11) default NULL,
931   `control_number` varchar(25) default NULL,
932   `original_source` varchar(25) default NULL,
933   `title` varchar(128) default NULL,
934   `author` varchar(80) default NULL,
935   `isbn` varchar(14) default NULL,
936   `issn` varchar(9) default NULL,
937   `has_items` tinyint(1) NOT NULL default 0,
938   CONSTRAINT `import_biblios_ibfk_1` FOREIGN KEY (`import_record_id`) 
939              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
940   KEY `matched_biblionumber` (`matched_biblionumber`),
941   KEY `title` (`title`),
942   KEY `isbn` (`isbn`)
943 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
944
945 --
946 -- Table structure for table `import_items`
947 --
948
949 DROP TABLE IF EXISTS `import_items`;
950 CREATE TABLE `import_items` (
951   `import_items_id` int(11) NOT NULL auto_increment,
952   `import_record_id` int(11) NOT NULL,
953   `itemnumber` int(11) default NULL,
954   `branchcode` varchar(10) default NULL,
955   `status` enum('error', 'staged', 'imported', 'reverted') NOT NULL default 'staged',
956   `marcxml` longtext NOT NULL,
957   `import_error` mediumtext,
958   PRIMARY KEY (`import_items_id`),
959   CONSTRAINT `import_items_ibfk_1` FOREIGN KEY (`import_record_id`) 
960              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
961   KEY `itemnumber` (`itemnumber`),
962   KEY `branchcode` (`branchcode`)
963 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
964
965 --
966 -- Table structure for table `issues`
967 --
968
969 DROP TABLE IF EXISTS `issues`;
970 CREATE TABLE `issues` (
971   `borrowernumber` int(11) default NULL,
972   `itemnumber` int(11) default NULL,
973   `date_due` date default NULL,
974   `branchcode` varchar(10) default NULL,
975   `issuingbranch` varchar(18) default NULL,
976   `returndate` date default NULL,
977   `lastreneweddate` date default NULL,
978   `return` varchar(4) default NULL,
979   `renewals` tinyint(4) default NULL,
980   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
981   `issuedate` date default NULL,
982   KEY `issuesborridx` (`borrowernumber`),
983   KEY `issuesitemidx` (`itemnumber`),
984   KEY `bordate` (`borrowernumber`,`timestamp`),
985   CONSTRAINT `issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE SET NULL ON UPDATE SET NULL,
986   CONSTRAINT `issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL
987 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
988
989 --
990 -- Table structure for table `issuingrules`
991 --
992
993 DROP TABLE IF EXISTS `issuingrules`;
994 CREATE TABLE `issuingrules` (
995   `categorycode` varchar(10) NOT NULL default '',
996   `itemtype` varchar(10) NOT NULL default '',
997   `restrictedtype` tinyint(1) default NULL,
998   `rentaldiscount` decimal(28,6) default NULL,
999   `reservecharge` decimal(28,6) default NULL,
1000   `fine` decimal(28,6) default NULL,
1001   `firstremind` int(11) default NULL,
1002   `chargeperiod` int(11) default NULL,
1003   `accountsent` int(11) default NULL,
1004   `chargename` varchar(100) default NULL,
1005   `maxissueqty` int(4) default NULL,
1006   `issuelength` int(4) default NULL,
1007   `branchcode` varchar(10) NOT NULL default '',
1008   PRIMARY KEY  (`branchcode`,`categorycode`,`itemtype`),
1009   KEY `categorycode` (`categorycode`),
1010   KEY `itemtype` (`itemtype`)
1011 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1012
1013 --
1014 -- Table structure for table `items`
1015 --
1016
1017 DROP TABLE IF EXISTS `items`;
1018 CREATE TABLE `items` (
1019   `itemnumber` int(11) NOT NULL auto_increment,
1020   `biblionumber` int(11) NOT NULL default 0,
1021   `biblioitemnumber` int(11) NOT NULL default 0,
1022   `barcode` varchar(20) default NULL,
1023   `dateaccessioned` date default NULL,
1024   `booksellerid` varchar(10) default NULL,
1025   `homebranch` varchar(10) default NULL,
1026   `price` decimal(8,2) default NULL,
1027   `replacementprice` decimal(8,2) default NULL,
1028   `replacementpricedate` date default NULL,
1029   `datelastborrowed` date default NULL,
1030   `datelastseen` date default NULL,
1031   `stack` tinyint(1) default NULL,
1032   `notforloan` tinyint(1) NOT NULL default 0,
1033   `damaged` tinyint(1) NOT NULL default 0,
1034   `itemlost` tinyint(1) NOT NULL default 0,
1035   `wthdrawn` tinyint(1) NOT NULL default 0,
1036   `itemcallnumber` varchar(30) default NULL,
1037   `issues` smallint(6) default NULL,
1038   `renewals` smallint(6) default NULL,
1039   `reserves` smallint(6) default NULL,
1040   `restricted` tinyint(1) default NULL,
1041   `itemnotes` mediumtext,
1042   `holdingbranch` varchar(10) default NULL,
1043   `paidfor` mediumtext,
1044   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1045   `location` varchar(80) default NULL,
1046   `onloan` date default NULL,
1047   `cn_source` varchar(10) default NULL,
1048   `cn_sort` varchar(30) default NULL,
1049   `ccode` varchar(10) default NULL,
1050   `materials` varchar(10) default NULL,
1051   `uri` varchar(255) default NULL,
1052   `itype` varchar(10) default NULL,
1053   `more_subfields_xml` longtext default NULL,
1054   `enumchron` varchar(80) default NULL,
1055   PRIMARY KEY  (`itemnumber`),
1056   UNIQUE KEY `itembarcodeidx` (`barcode`),
1057   KEY `itembinoidx` (`biblioitemnumber`),
1058   KEY `itembibnoidx` (`biblionumber`),
1059   KEY `homebranch` (`homebranch`),
1060   KEY `holdingbranch` (`holdingbranch`),
1061   CONSTRAINT `items_ibfk_1` FOREIGN KEY (`biblioitemnumber`) REFERENCES `biblioitems` (`biblioitemnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1062   CONSTRAINT `items_ibfk_2` FOREIGN KEY (`homebranch`) REFERENCES `branches` (`branchcode`) ON UPDATE CASCADE,
1063   CONSTRAINT `items_ibfk_3` FOREIGN KEY (`holdingbranch`) REFERENCES `branches` (`branchcode`) ON UPDATE CASCADE
1064 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1065
1066 --
1067 -- Table structure for table `itemtypes`
1068 --
1069
1070 DROP TABLE IF EXISTS `itemtypes`;
1071 CREATE TABLE `itemtypes` (
1072   `itemtype` varchar(10) NOT NULL default '',
1073   `description` mediumtext,
1074   `renewalsallowed` smallint(6) default NULL,
1075   `rentalcharge` double(16,4) default NULL,
1076   `notforloan` smallint(6) default NULL,
1077   `imageurl` varchar(200) default NULL,
1078   `summary` text,
1079   PRIMARY KEY  (`itemtype`),
1080   UNIQUE KEY `itemtype` (`itemtype`)
1081 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1082
1083 --
1084 -- Table structure for table `labels`
1085 --
1086
1087 DROP TABLE IF EXISTS `labels`;
1088 CREATE TABLE `labels` (
1089   `labelid` int(11) NOT NULL auto_increment,
1090   `batch_id` varchar(10) NOT NULL default 1,
1091   `itemnumber` varchar(100) NOT NULL default '',
1092   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1093   PRIMARY KEY  (`labelid`)
1094 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1095
1096 --
1097 -- Table structure for table `labels_conf`
1098 --
1099
1100 DROP TABLE IF EXISTS `labels_conf`;
1101 CREATE TABLE `labels_conf` (
1102  `id` int(4) NOT NULL auto_increment,
1103   `barcodetype` char(100) default '',
1104   `title` int(1) default '0',
1105   `subtitle` int(1) default '0',
1106   `itemtype` int(1) default '0',
1107   `barcode` int(1) default '0',
1108   `dewey` int(1) default '0',
1109   `class` int(1) default NULL,
1110   `subclass` int(1) default '0',
1111   `itemcallnumber` int(1) default '0',
1112   `author` int(1) default '0',
1113   `issn` int(1) default '0',
1114   `isbn` int(1) default '0',
1115   `startlabel` int(2) NOT NULL default '1',
1116   `printingtype` char(32) default 'BAR',
1117   `layoutname` char(20) NOT NULL default 'TEST',
1118   `guidebox` int(1) default '0',
1119   `active` tinyint(1) default '1',
1120   `fonttype` char(10) collate utf8_unicode_ci default NULL,
1121   `ccode` char(4) collate utf8_unicode_ci default NULL,
1122   `callnum_split` int(1) default NULL,
1123   `text_justify` char(1) collate utf8_unicode_ci default NULL,
1124   PRIMARY KEY  (`id`)
1125 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1126
1127 --
1128 -- Table structure for table `labels_profile`
1129 --
1130
1131 DROP TABLE IF EXISTS `labels_profile`;
1132 CREATE TABLE `labels_profile` (
1133   `tmpl_id` int(4) NOT NULL,
1134   `prof_id` int(4) NOT NULL,
1135   UNIQUE KEY `tmpl_id` (`tmpl_id`),
1136   UNIQUE KEY `prof_id` (`prof_id`)
1137 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1138
1139 --
1140 -- Table structure for table `labels_templates`
1141 --
1142
1143 DROP TABLE IF EXISTS `labels_templates`;
1144 CREATE TABLE `labels_templates` (
1145 `tmpl_id` int(4) NOT NULL auto_increment,
1146   `tmpl_code` char(100)  default '',
1147   `tmpl_desc` char(100) default '',
1148   `page_width` float default '0',
1149   `page_height` float default '0',
1150   `label_width` float default '0',
1151   `label_height` float default '0',
1152   `topmargin` float default '0',
1153   `leftmargin` float default '0',
1154   `cols` int(2) default '0',
1155   `rows` int(2) default '0',
1156   `colgap` float default '0',
1157   `rowgap` float default '0',
1158   `active` int(1) default NULL,
1159   `units` char(20)  default 'PX',
1160   `fontsize` int(4) NOT NULL default '3',
1161   PRIMARY KEY  (`tmpl_id`)
1162 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1163
1164 --
1165 -- Table structure for table `letter`
1166 --
1167
1168 DROP TABLE IF EXISTS `letter`;
1169 CREATE TABLE `letter` (
1170   `module` varchar(20) NOT NULL default '',
1171   `code` varchar(20) NOT NULL default '',
1172   `name` varchar(100) NOT NULL default '',
1173   `title` varchar(200) NOT NULL default '',
1174   `content` text,
1175   PRIMARY KEY  (`module`,`code`)
1176 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1177
1178 --
1179 -- Table structure for table `marc_subfield_structure`
1180 --
1181
1182 DROP TABLE IF EXISTS `marc_subfield_structure`;
1183 CREATE TABLE `marc_subfield_structure` (
1184   `tagfield` varchar(3) NOT NULL default '',
1185   `tagsubfield` varchar(1) NOT NULL default '',
1186   `liblibrarian` varchar(255) NOT NULL default '',
1187   `libopac` varchar(255) NOT NULL default '',
1188   `repeatable` tinyint(4) NOT NULL default 0,
1189   `mandatory` tinyint(4) NOT NULL default 0,
1190   `kohafield` varchar(40) default NULL,
1191   `tab` tinyint(1) default NULL,
1192   `authorised_value` varchar(20) default NULL,
1193   `authtypecode` varchar(20) default NULL,
1194   `value_builder` varchar(80) default NULL,
1195   `isurl` tinyint(1) default NULL,
1196   `hidden` tinyint(1) default NULL,
1197   `frameworkcode` varchar(4) NOT NULL default '',
1198   `seealso` varchar(1100) default NULL,
1199   `link` varchar(80) default NULL,
1200   `defaultvalue` text default NULL,
1201   PRIMARY KEY  (`frameworkcode`,`tagfield`,`tagsubfield`),
1202   KEY `kohafield_2` (`kohafield`),
1203   KEY `tab` (`frameworkcode`,`tab`),
1204   KEY `kohafield` (`frameworkcode`,`kohafield`)
1205 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1206
1207 --
1208 -- Table structure for table `marc_tag_structure`
1209 --
1210
1211 DROP TABLE IF EXISTS `marc_tag_structure`;
1212 CREATE TABLE `marc_tag_structure` (
1213   `tagfield` varchar(3) NOT NULL default '',
1214   `liblibrarian` varchar(255) NOT NULL default '',
1215   `libopac` varchar(255) NOT NULL default '',
1216   `repeatable` tinyint(4) NOT NULL default 0,
1217   `mandatory` tinyint(4) NOT NULL default 0,
1218   `authorised_value` varchar(10) default NULL,
1219   `frameworkcode` varchar(4) NOT NULL default '',
1220   PRIMARY KEY  (`frameworkcode`,`tagfield`)
1221 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1222
1223 --
1224 -- Table structure for table `marc_matchers`
1225 --
1226
1227 DROP TABLE IF EXISTS `marc_matchers`;
1228 CREATE TABLE `marc_matchers` (
1229   `matcher_id` int(11) NOT NULL auto_increment,
1230   `code` varchar(10) NOT NULL default '',
1231   `description` varchar(255) NOT NULL default '',
1232   `record_type` varchar(10) NOT NULL default 'biblio',
1233   `threshold` int(11) NOT NULL default 0,
1234   PRIMARY KEY (`matcher_id`),
1235   KEY `code` (`code`),
1236   KEY `record_type` (`record_type`)
1237 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1238
1239 --
1240 -- Table structure for table `matchpoints`
1241 --
1242 DROP TABLE IF EXISTS `matchpoints`;
1243 CREATE TABLE `matchpoints` (
1244   `matcher_id` int(11) NOT NULL,
1245   `matchpoint_id` int(11) NOT NULL auto_increment,
1246   `search_index` varchar(30) NOT NULL default '',
1247   `score` int(11) NOT NULL default 0,
1248   PRIMARY KEY (`matchpoint_id`),
1249   CONSTRAINT `matchpoints_ifbk_1` FOREIGN KEY (`matcher_id`)
1250   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE
1251 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1252
1253
1254 --
1255 -- Table structure for table `matchpoint_components`
1256 --
1257 DROP TABLE IF EXISTS `matchpoint_components`;
1258 CREATE TABLE `matchpoint_components` (
1259   `matchpoint_id` int(11) NOT NULL,
1260   `matchpoint_component_id` int(11) NOT NULL auto_increment,
1261   sequence int(11) NOT NULL default 0,
1262   tag varchar(3) NOT NULL default '',
1263   subfields varchar(40) NOT NULL default '',
1264   offset int(4) NOT NULL default 0,
1265   length int(4) NOT NULL default 0,
1266   PRIMARY KEY (`matchpoint_component_id`),
1267   KEY `by_sequence` (`matchpoint_id`, `sequence`),
1268   CONSTRAINT `matchpoint_components_ifbk_1` FOREIGN KEY (`matchpoint_id`)
1269   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1270 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1271
1272 --
1273 -- Table structure for table `matcher_component_norms`
1274 --
1275 DROP TABLE IF EXISTS `matchpoint_component_norms`;
1276 CREATE TABLE `matchpoint_component_norms` (
1277   `matchpoint_component_id` int(11) NOT NULL,
1278   `sequence`  int(11) NOT NULL default 0,
1279   `norm_routine` varchar(50) NOT NULL default '',
1280   KEY `matchpoint_component_norms` (`matchpoint_component_id`, `sequence`),
1281   CONSTRAINT `matchpoint_component_norms_ifbk_1` FOREIGN KEY (`matchpoint_component_id`)
1282   REFERENCES `matchpoint_components` (`matchpoint_component_id`) ON DELETE CASCADE ON UPDATE CASCADE
1283 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1284
1285 --
1286 -- Table structure for table `matcher_matchpoints`
1287 --
1288 DROP TABLE IF EXISTS `matcher_matchpoints`;
1289 CREATE TABLE `matcher_matchpoints` (
1290   `matcher_id` int(11) NOT NULL,
1291   `matchpoint_id` int(11) NOT NULL,
1292   CONSTRAINT `matcher_matchpoints_ifbk_1` FOREIGN KEY (`matcher_id`)
1293   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1294   CONSTRAINT `matcher_matchpoints_ifbk_2` FOREIGN KEY (`matchpoint_id`)
1295   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1296 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1297
1298 --
1299 -- Table structure for table `matchchecks`
1300 --
1301 DROP TABLE IF EXISTS `matchchecks`;
1302 CREATE TABLE `matchchecks` (
1303   `matcher_id` int(11) NOT NULL,
1304   `matchcheck_id` int(11) NOT NULL auto_increment,
1305   `source_matchpoint_id` int(11) NOT NULL,
1306   `target_matchpoint_id` int(11) NOT NULL,
1307   PRIMARY KEY (`matchcheck_id`),
1308   CONSTRAINT `matcher_matchchecks_ifbk_1` FOREIGN KEY (`matcher_id`)
1309   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1310   CONSTRAINT `matcher_matchchecks_ifbk_2` FOREIGN KEY (`source_matchpoint_id`)
1311   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1312   CONSTRAINT `matcher_matchchecks_ifbk_3` FOREIGN KEY (`target_matchpoint_id`)
1313   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1314 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1315
1316 --
1317 -- Table structure for table `mediatypetable`
1318 --
1319
1320 DROP TABLE IF EXISTS `mediatypetable`;
1321 CREATE TABLE `mediatypetable` (
1322   `mediatypecode` varchar(5) NOT NULL default '',
1323   `description` text,
1324   `itemtypecodes` text,
1325   PRIMARY KEY  (`mediatypecode`)
1326 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1327
1328 --
1329 -- Table structure for table `notifys`
1330 --
1331
1332 DROP TABLE IF EXISTS `notifys`;
1333 CREATE TABLE `notifys` (
1334   `notify_id` int(11) NOT NULL default 0,
1335   `borrowernumber` int(11) NOT NULL default 0,
1336   `itemnumber` int(11) NOT NULL default 0,
1337   `notify_date` date default NULL,
1338   `notify_send_date` date default NULL,
1339   `notify_level` int(1) NOT NULL default 0,
1340   `method` varchar(20) NOT NULL default ''
1341 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1342
1343 --
1344 -- Table structure for table `nozebra`
1345 --
1346 DROP TABLE IF EXISTS `nozebra`;
1347 CREATE TABLE `nozebra` (
1348                 `server` varchar(20)     NOT NULL,
1349                 `indexname` varchar(40)  NOT NULL,
1350                 `value` varchar(250)     NOT NULL,
1351                 `biblionumbers` longtext NOT NULL,
1352                 KEY `indexname` (`server`,`indexname`),
1353                 KEY `value` (`server`,`value`))
1354                 ENGINE=InnoDB DEFAULT CHARSET=utf8;
1355
1356 --
1357 -- Table structure for table `opac_news`
1358 --
1359
1360 DROP TABLE IF EXISTS `opac_news`;
1361 CREATE TABLE `opac_news` (
1362   `idnew` int(10) unsigned NOT NULL auto_increment,
1363   `title` varchar(250) NOT NULL default '',
1364   `new` text NOT NULL,
1365   `lang` varchar(4) NOT NULL default '',
1366   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
1367   `expirationdate` date default NULL,
1368   `number` int(11) default NULL,
1369   PRIMARY KEY  (`idnew`)
1370 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1371
1372 --
1373 -- Table structure for table `overduerules`
1374 --
1375
1376 DROP TABLE IF EXISTS `overduerules`;
1377 CREATE TABLE `overduerules` (
1378   `branchcode` varchar(10) NOT NULL default '',
1379   `categorycode` varchar(2) NOT NULL default '',
1380   `delay1` int(4) default 0,
1381   `letter1` varchar(20) default NULL,
1382   `debarred1` varchar(1) default 0,
1383   `delay2` int(4) default 0,
1384   `debarred2` varchar(1) default 0,
1385   `letter2` varchar(20) default NULL,
1386   `delay3` int(4) default 0,
1387   `letter3` varchar(20) default NULL,
1388   `debarred3` int(1) default 0,
1389   PRIMARY KEY  (`branchcode`,`categorycode`)
1390 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1391
1392 --
1393 -- Table structure for table `patronimage`
1394 --
1395
1396 DROP TABLE IF EXISTS `patronimage`;
1397 CREATE TABLE `patronimage` (
1398   `cardnumber` varchar(16) NOT NULL,
1399   `mimetype` varchar(15) NOT NULL,
1400   `imagefile` mediumblob NOT NULL,
1401   PRIMARY KEY  (`cardnumber`),
1402   CONSTRAINT `patronimage_fk1` FOREIGN KEY (`cardnumber`) REFERENCES `borrowers` (`cardnumber`) ON DELETE CASCADE ON UPDATE CASCADE
1403 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1404
1405 --
1406 -- Table structure for table `printers`
1407 --
1408
1409 DROP TABLE IF EXISTS `printers`;
1410 CREATE TABLE `printers` (
1411   `printername` varchar(40) NOT NULL default '',
1412   `printqueue` varchar(20) default NULL,
1413   `printtype` varchar(20) default NULL,
1414   PRIMARY KEY  (`printername`)
1415 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1416
1417 --
1418 -- Table structure for table `printers_profile`
1419 --
1420
1421 DROP TABLE IF EXISTS `printers_profile`;
1422 CREATE TABLE `printers_profile` (
1423   `prof_id` int(4) NOT NULL auto_increment,
1424   `printername` varchar(40) NOT NULL,
1425   `tmpl_id` int(4) NOT NULL,
1426   `paper_bin` varchar(20) NOT NULL,
1427   `offset_horz` float default NULL,
1428   `offset_vert` float default NULL,
1429   `creep_horz` float default NULL,
1430   `creep_vert` float default NULL,
1431   `unit` char(20) NOT NULL default 'POINT',
1432   PRIMARY KEY  (`prof_id`),
1433   UNIQUE KEY `printername` (`printername`,`tmpl_id`,`paper_bin`),
1434   CONSTRAINT `printers_profile_pnfk_1` FOREIGN KEY (`tmpl_id`) REFERENCES `labels_templates` (`tmpl_id`) ON DELETE CASCADE ON UPDATE CASCADE
1435 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1436
1437 --
1438 -- Table structure for table `repeatable_holidays`
1439 --
1440
1441 DROP TABLE IF EXISTS `repeatable_holidays`;
1442 CREATE TABLE `repeatable_holidays` (
1443   `id` int(11) NOT NULL auto_increment,
1444   `branchcode` varchar(10) NOT NULL default '',
1445   `weekday` smallint(6) default NULL,
1446   `day` smallint(6) default NULL,
1447   `month` smallint(6) default NULL,
1448   `title` varchar(50) NOT NULL default '',
1449   `description` text NOT NULL,
1450   PRIMARY KEY  (`id`)
1451 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1452
1453 --
1454 -- Table structure for table `reports_dictionary`
1455 -- 
1456
1457 DROP TABLE IF EXISTS `reports_dictionary`;
1458 CREATE TABLE reports_dictionary (
1459    `id` int(11) NOT NULL auto_increment,
1460    `name` varchar(255) default NULL,
1461    `description` text,
1462    `date_created` datetime default NULL,
1463    `date_modified` datetime default NULL,
1464    `saved_sql` text,
1465    `area` int(11) default NULL,
1466    PRIMARY KEY  (`id`)
1467 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1468
1469 --
1470 -- Table structure for table `reserveconstraints`
1471 --
1472
1473 DROP TABLE IF EXISTS `reserveconstraints`;
1474 CREATE TABLE `reserveconstraints` (
1475   `borrowernumber` int(11) NOT NULL default 0,
1476   `reservedate` date default NULL,
1477   `biblionumber` int(11) NOT NULL default 0,
1478   `biblioitemnumber` int(11) default NULL,
1479   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
1480 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1481
1482 --
1483 -- Table structure for table `reserves`
1484 --
1485
1486 DROP TABLE IF EXISTS `reserves`;
1487 CREATE TABLE `reserves` (
1488   `borrowernumber` int(11) NOT NULL default 0,
1489   `reservedate` date default NULL,
1490   `biblionumber` int(11) NOT NULL default 0,
1491   `constrainttype` varchar(1) default NULL,
1492   `branchcode` varchar(10) default NULL,
1493   `notificationdate` date default NULL,
1494   `reminderdate` date default NULL,
1495   `cancellationdate` date default NULL,
1496   `reservenotes` mediumtext,
1497   `priority` smallint(6) default NULL,
1498   `found` varchar(1) default NULL,
1499   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1500   `itemnumber` int(11) default NULL,
1501   `waitingdate` date default NULL,
1502   KEY `borrowernumber` (`borrowernumber`),
1503   KEY `biblionumber` (`biblionumber`),
1504   KEY `itemnumber` (`itemnumber`),
1505   KEY `branchcode` (`branchcode`),
1506   CONSTRAINT `reserves_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1507   CONSTRAINT `reserves_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1508   CONSTRAINT `reserves_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1509   CONSTRAINT `reserves_ibfk_4` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE
1510 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1511
1512 --
1513 -- Table structure for table `reviews`
1514 --
1515
1516 DROP TABLE IF EXISTS `reviews`;
1517 CREATE TABLE `reviews` (
1518   `reviewid` int(11) NOT NULL auto_increment,
1519   `borrowernumber` int(11) default NULL,
1520   `biblionumber` int(11) default NULL,
1521   `review` text,
1522   `approved` tinyint(4) default NULL,
1523   `datereviewed` datetime default NULL,
1524   PRIMARY KEY  (`reviewid`)
1525 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1526
1527 --
1528 -- Table structure for table `roadtype`
1529 --
1530
1531 DROP TABLE IF EXISTS `roadtype`;
1532 CREATE TABLE `roadtype` (
1533   `roadtypeid` int(11) NOT NULL auto_increment,
1534   `road_type` varchar(100) NOT NULL default '',
1535   PRIMARY KEY  (`roadtypeid`)
1536 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1537
1538 --
1539 -- Table structure for table `saved_sql`
1540 --
1541
1542 DROP TABLE IF EXISTS `saved_sql`;
1543 CREATE TABLE saved_sql (
1544    `id` int(11) NOT NULL auto_increment,
1545    `borrowernumber` int(11) default NULL,
1546    `date_created` datetime default NULL,
1547    `last_modified` datetime default NULL,
1548    `savedsql` text,
1549    `last_run` datetime default NULL,
1550    `report_name` varchar(255) default NULL,
1551    `type` varchar(255) default NULL,
1552    `notes` text,
1553    PRIMARY KEY  (`id`),
1554    KEY boridx (`borrowernumber`)
1555 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1556
1557
1558 --
1559 -- Table structure for `saved_reports`
1560 --
1561
1562 DROP TABLE IF EXISTS `saved_reports`;
1563 CREATE TABLE saved_reports (
1564    `id` int(11) NOT NULL auto_increment,
1565    `report_id` int(11) default NULL,
1566    `report` longtext,
1567    `date_run` datetime default NULL,
1568    PRIMARY KEY  (`id`)
1569 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1570                    
1571                    
1572 --
1573 -- Table structure for table `serial`
1574 --
1575
1576 DROP TABLE IF EXISTS `serial`;
1577 CREATE TABLE `serial` (
1578   `serialid` int(11) NOT NULL auto_increment,
1579   `biblionumber` varchar(100) NOT NULL default '',
1580   `subscriptionid` varchar(100) NOT NULL default '',
1581   `serialseq` varchar(100) NOT NULL default '',
1582   `status` tinyint(4) NOT NULL default 0,
1583   `planneddate` date default NULL,
1584   `notes` text,
1585   `publisheddate` date default NULL,
1586   `itemnumber` text default NULL,
1587   `claimdate` date default NULL,
1588   `routingnotes` text,
1589   PRIMARY KEY  (`serialid`)
1590 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1591
1592 --
1593 -- Table structure for table `sessions`
1594 --
1595
1596 DROP TABLE IF EXISTS sessions;                         
1597 CREATE TABLE sessions (
1598   `id` varchar(32) NOT NULL,
1599   `a_session` text NOT NULL,
1600   UNIQUE KEY id (id)
1601 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1602
1603 --
1604 -- Table structure for table `special_holidays`
1605 --
1606
1607 DROP TABLE IF EXISTS `special_holidays`;
1608 CREATE TABLE `special_holidays` (
1609   `id` int(11) NOT NULL auto_increment,
1610   `branchcode` varchar(10) NOT NULL default '',
1611   `day` smallint(6) NOT NULL default 0,
1612   `month` smallint(6) NOT NULL default 0,
1613   `year` smallint(6) NOT NULL default 0,
1614   `isexception` smallint(1) NOT NULL default 1,
1615   `title` varchar(50) NOT NULL default '',
1616   `description` text NOT NULL,
1617   PRIMARY KEY  (`id`)
1618 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1619
1620 --
1621 -- Table structure for table `statistics`
1622 --
1623
1624 DROP TABLE IF EXISTS `statistics`;
1625 CREATE TABLE `statistics` (
1626   `datetime` datetime default NULL,
1627   `branch` varchar(10) default NULL,
1628   `proccode` varchar(4) default NULL,
1629   `value` double(16,4) default NULL,
1630   `type` varchar(16) default NULL,
1631   `other` mediumtext,
1632   `usercode` varchar(10) default NULL,
1633   `itemnumber` int(11) default NULL,
1634   `itemtype` varchar(10) default NULL,
1635   `borrowernumber` int(11) default NULL,
1636   `associatedborrower` int(11) default NULL,
1637   KEY `timeidx` (`datetime`)
1638 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1639
1640 --
1641 -- Table structure for table `stopwords`
1642 --
1643
1644 DROP TABLE IF EXISTS `stopwords`;
1645   CREATE TABLE `stopwords` (
1646   `word` varchar(255) default NULL
1647 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1648
1649 --
1650 -- Table structure for table `subcategorytable`
1651 --
1652
1653 DROP TABLE IF EXISTS `subcategorytable`;
1654 CREATE TABLE `subcategorytable` (
1655   `subcategorycode` varchar(5) NOT NULL default '',
1656   `description` text,
1657   `itemtypecodes` text,
1658   PRIMARY KEY  (`subcategorycode`)
1659 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1660
1661 --
1662 -- Table structure for table `subscription`
1663 --
1664
1665 DROP TABLE IF EXISTS `subscription`;
1666 CREATE TABLE `subscription` (
1667   `biblionumber` int(11) NOT NULL default 0,
1668   `subscriptionid` int(11) NOT NULL auto_increment,
1669   `librarian` varchar(100) default '',
1670   `startdate` date default NULL,
1671   `aqbooksellerid` int(11) default 0,
1672   `cost` int(11) default 0,
1673   `aqbudgetid` int(11) default 0,
1674   `weeklength` int(11) default 0,
1675   `monthlength` int(11) default 0,
1676   `numberlength` int(11) default 0,
1677   `periodicity` tinyint(4) default 0,
1678   `dow` varchar(100) default '',
1679   `numberingmethod` varchar(100) default '',
1680   `notes` mediumtext,
1681   `status` varchar(100) NOT NULL default '',
1682   `add1` int(11) default 0,
1683   `every1` int(11) default 0,
1684   `whenmorethan1` int(11) default 0,
1685   `setto1` int(11) default NULL,
1686   `lastvalue1` int(11) default NULL,
1687   `add2` int(11) default 0,
1688   `every2` int(11) default 0,
1689   `whenmorethan2` int(11) default 0,
1690   `setto2` int(11) default NULL,
1691   `lastvalue2` int(11) default NULL,
1692   `add3` int(11) default 0,
1693   `every3` int(11) default 0,
1694   `innerloop1` int(11) default 0,
1695   `innerloop2` int(11) default 0,
1696   `innerloop3` int(11) default 0,
1697   `whenmorethan3` int(11) default 0,
1698   `setto3` int(11) default NULL,
1699   `lastvalue3` int(11) default NULL,
1700   `issuesatonce` tinyint(3) NOT NULL default 1,
1701   `firstacquidate` date default NULL,
1702   `manualhistory` tinyint(1) NOT NULL default 0,
1703   `irregularity` text,
1704   `letter` varchar(20) default NULL,
1705   `numberpattern` tinyint(3) default 0,
1706   `distributedto` text,
1707   `internalnotes` longtext,
1708   `callnumber` text,
1709   `branchcode` varchar(10) NOT NULL default '',
1710   `hemisphere` tinyint(3) default 0,
1711   `lastbranch` varchar(10),
1712   PRIMARY KEY  (`subscriptionid`)
1713 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1714
1715 --
1716 -- Table structure for table `subscriptionhistory`
1717 --
1718
1719 DROP TABLE IF EXISTS `subscriptionhistory`;
1720 CREATE TABLE `subscriptionhistory` (
1721   `biblionumber` int(11) NOT NULL default 0,
1722   `subscriptionid` int(11) NOT NULL default 0,
1723   `histstartdate` date default NULL,
1724   `enddate` date default NULL,
1725   `missinglist` longtext NOT NULL,
1726   `recievedlist` longtext NOT NULL,
1727   `opacnote` varchar(150) NOT NULL default '',
1728   `librariannote` varchar(150) NOT NULL default '',
1729   PRIMARY KEY  (`subscriptionid`),
1730   KEY `biblionumber` (`biblionumber`)
1731 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1732
1733 --
1734 -- Table structure for table `subscriptionroutinglist`
1735 --
1736
1737 DROP TABLE IF EXISTS `subscriptionroutinglist`;
1738 CREATE TABLE `subscriptionroutinglist` (
1739   `routingid` int(11) NOT NULL auto_increment,
1740   `borrowernumber` int(11) default NULL,
1741   `ranking` int(11) default NULL,
1742   `subscriptionid` int(11) default NULL,
1743   PRIMARY KEY  (`routingid`)
1744 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1745
1746 --
1747 -- Table structure for table `suggestions`
1748 --
1749
1750 DROP TABLE IF EXISTS `suggestions`;
1751 CREATE TABLE `suggestions` (
1752   `suggestionid` int(8) NOT NULL auto_increment,
1753   `suggestedby` int(11) NOT NULL default 0,
1754   `managedby` int(11) default NULL,
1755   `STATUS` varchar(10) NOT NULL default '',
1756   `note` mediumtext,
1757   `author` varchar(80) default NULL,
1758   `title` varchar(80) default NULL,
1759   `copyrightdate` smallint(6) default NULL,
1760   `publishercode` varchar(255) default NULL,
1761   `date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1762   `volumedesc` varchar(255) default NULL,
1763   `publicationyear` smallint(6) default 0,
1764   `place` varchar(255) default NULL,
1765   `isbn` varchar(10) default NULL,
1766   `mailoverseeing` smallint(1) default 0,
1767   `biblionumber` int(11) default NULL,
1768   `reason` text,
1769   PRIMARY KEY  (`suggestionid`),
1770   KEY `suggestedby` (`suggestedby`),
1771   KEY `managedby` (`managedby`)
1772 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1773
1774 --
1775 -- Table structure for table `systempreferences`
1776 --
1777
1778 DROP TABLE IF EXISTS `systempreferences`;
1779 CREATE TABLE `systempreferences` (
1780   `variable` varchar(50) NOT NULL default '',
1781   `value` text,
1782   `options` mediumtext,
1783   `explanation` text,
1784   `type` varchar(20) default NULL,
1785   PRIMARY KEY  (`variable`)
1786 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1787
1788 --
1789 -- Table structure for table `tags`
1790 --
1791
1792 DROP TABLE IF EXISTS `tags`;
1793 CREATE TABLE `tags` (
1794   `entry` varchar(255) NOT NULL default '',
1795   `weight` bigint(20) NOT NULL default 0,
1796   PRIMARY KEY  (`entry`)
1797 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1798
1799 --
1800 -- Table structure for table `userflags`
1801 --
1802
1803 DROP TABLE IF EXISTS `userflags`;
1804 CREATE TABLE `userflags` (
1805   `bit` int(11) NOT NULL default 0,
1806   `flag` varchar(30) default NULL,
1807   `flagdesc` varchar(255) default NULL,
1808   `defaulton` int(11) default NULL,
1809   PRIMARY KEY  (`bit`)
1810 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1811
1812 --
1813 -- Table structure for table `virtualshelves`
1814 --
1815
1816 DROP TABLE IF EXISTS `virtualshelves`;
1817 CREATE TABLE `virtualshelves` (
1818   `shelfnumber` int(11) NOT NULL auto_increment,
1819   `shelfname` varchar(255) default NULL,
1820   `owner` varchar(80) default NULL,
1821   `category` varchar(1) default NULL,
1822   `sortfield` varchar(16) default NULL,
1823   PRIMARY KEY  (`shelfnumber`)
1824 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1825
1826 --
1827 -- Table structure for table `virtualshelfcontents`
1828 --
1829
1830 DROP TABLE IF EXISTS `virtualshelfcontents`;
1831 CREATE TABLE `virtualshelfcontents` (
1832   `shelfnumber` int(11) NOT NULL default 0,
1833   `biblionumber` int(11) NOT NULL default 0,
1834   `flags` int(11) default NULL,
1835   `dateadded` timestamp NULL default NULL,
1836   KEY `shelfnumber` (`shelfnumber`),
1837   KEY `biblionumber` (`biblionumber`),
1838   CONSTRAINT `virtualshelfcontents_ibfk_1` FOREIGN KEY (`shelfnumber`) REFERENCES `virtualshelves` (`shelfnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1839   CONSTRAINT `shelfcontents_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
1840 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1841
1842 --
1843 -- Table structure for table `z3950servers`
1844 --
1845
1846 DROP TABLE IF EXISTS `z3950servers`;
1847 CREATE TABLE `z3950servers` (
1848   `host` varchar(255) default NULL,
1849   `port` int(11) default NULL,
1850   `db` varchar(255) default NULL,
1851   `userid` varchar(255) default NULL,
1852   `password` varchar(255) default NULL,
1853   `name` mediumtext,
1854   `id` int(11) NOT NULL auto_increment,
1855   `checked` smallint(6) default NULL,
1856   `rank` int(11) default NULL,
1857   `syntax` varchar(80) default NULL,
1858   `icon` text,
1859   `position` enum('primary','secondary','') NOT NULL default 'primary',
1860   `type` enum('zed','opensearch') NOT NULL default 'zed',
1861   `encoding` text default NULL,
1862   `description` text NOT NULL,
1863   PRIMARY KEY  (`id`)
1864 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1865
1866 --
1867 -- Table structure for table `zebraqueue`
1868 --
1869
1870 DROP TABLE IF EXISTS `zebraqueue`;
1871 CREATE TABLE `zebraqueue` (
1872   `id` int(11) NOT NULL auto_increment,
1873   `biblio_auth_number` int(11) NOT NULL default '0',
1874   `operation` char(20) NOT NULL default '',
1875   `server` char(20) NOT NULL default '',
1876   `done` int(11) NOT NULL default '0',
1877   `time` timestamp NOT NULL default CURRENT_TIMESTAMP,
1878   PRIMARY KEY  (`id`),
1879   KEY `zebraqueue_lookup` (`server`, `biblio_auth_number`, `operation`, `done`)
1880 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1881
1882 DROP TABLE IF EXISTS `services_throttle`;
1883 CREATE TABLE `services_throttle` (
1884   `service_type` varchar(10) NOT NULL default '',
1885   `service_count` varchar(45) default NULL,
1886   PRIMARY KEY  (`service_type`)
1887 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1888
1889 -- http://www.w3.org/International/articles/language-tags/
1890
1891 -- RFC4646
1892 DROP TABLE IF EXISTS language_subtag_registry;
1893 CREATE TABLE language_subtag_registry (
1894         subtag varchar(25),
1895         type varchar(25), -- language-script-region-variant-extension-privateuse
1896         description varchar(25), -- only one of the possible descriptions for ease of reference, see language_descriptions for the complete list
1897         added date,
1898         KEY `subtag` (`subtag`)
1899 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1900
1901 -- TODO: add suppress_scripts
1902 -- this maps three letter codes defined in iso639.2 back to their
1903 -- two letter equivilents in rfc4646 (LOC maintains iso639+)
1904 DROP TABLE IF EXISTS language_rfc4646_to_iso639;
1905 CREATE TABLE language_rfc4646_to_iso639 (
1906         rfc4646_subtag varchar(25),
1907         iso639_2_code varchar(25),
1908         KEY `rfc4646_subtag` (`rfc4646_subtag`)
1909 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1910
1911 DROP TABLE IF EXISTS language_descriptions;
1912 CREATE TABLE language_descriptions (
1913         subtag varchar(25),
1914         type varchar(25),
1915         lang varchar(25),
1916         description varchar(255),
1917         KEY `lang` (`lang`)
1918 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1919
1920 -- bi-directional support, keyed by script subcode
1921 DROP TABLE IF EXISTS language_script_bidi;
1922 CREATE TABLE language_script_bidi (
1923         rfc4646_subtag varchar(25), -- script subtag, Arab, Hebr, etc.
1924         bidi varchar(3), -- rtl ltr
1925         KEY `rfc4646_subtag` (`rfc4646_subtag`)
1926 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1927
1928 -- TODO: need to map language subtags to script subtags for detection
1929 -- of bidi when script is not specified (like ar, he)
1930 DROP TABLE IF EXISTS language_script_mapping;
1931 CREATE TABLE language_script_mapping (
1932         language_subtag varchar(25),
1933         script_subtag varchar(25),
1934         KEY `language_subtag` (`language_subtag`)
1935 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1936
1937 DROP TABLE IF EXISTS serialitems;
1938 CREATE TABLE serialitems (
1939         serialid int(11) NOT NULL,
1940         itemnumber int(11) NOT NULL,
1941         UNIQUE KEY `serialididx` (`serialid`)
1942 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1943
1944 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
1945 /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
1946 /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
1947 /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
1948 /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
1949 /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
1950 /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
1951 /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
1952