(bug 1532) Reserves Updates Ported From Dev_Week
[koha_fer] / 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 `auth_header`
20 --
21
22 DROP TABLE IF EXISTS `auth_header`;
23 CREATE TABLE `auth_header` (
24   `authid` bigint(20) unsigned NOT NULL auto_increment,
25   `authtypecode` varchar(10) NOT NULL default '',
26   `datecreated` date default NULL,
27   `datemodified` date default NULL,
28   `origincode` varchar(20) default NULL,
29   `authtrees` mediumtext,
30   `marc` blob,
31   `linkid` bigint(20) default NULL,
32   `marcxml` longtext NOT NULL,
33   PRIMARY KEY  (`authid`),
34   KEY `origincode` (`origincode`)
35 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
36
37 --
38 -- Table structure for table `auth_subfield_structure`
39 --
40
41 DROP TABLE IF EXISTS `auth_subfield_structure`;
42 CREATE TABLE `auth_subfield_structure` (
43   `authtypecode` varchar(10) NOT NULL default '',
44   `tagfield` varchar(3) NOT NULL default '',
45   `tagsubfield` varchar(1) NOT NULL default '',
46   `liblibrarian` varchar(255) NOT NULL default '',
47   `libopac` varchar(255) NOT NULL default '',
48   `repeatable` tinyint(4) NOT NULL default 0,
49   `mandatory` tinyint(4) NOT NULL default 0,
50   `tab` tinyint(1) default NULL,
51   `authorised_value` varchar(10) default NULL,
52   `value_builder` varchar(80) default NULL,
53   `seealso` varchar(255) default NULL,
54   `isurl` tinyint(1) default NULL,
55   `hidden` tinyint(3) NOT NULL default 0,
56   `linkid` tinyint(1) NOT NULL default 0,
57   `kohafield` varchar(45) NULL default '',
58   `frameworkcode` varchar(10) NOT NULL default '',
59   PRIMARY KEY  (`authtypecode`,`tagfield`,`tagsubfield`),
60   KEY `tab` (`authtypecode`,`tab`)
61 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
62
63 --
64 -- Table structure for table `auth_tag_structure`
65 --
66
67 DROP TABLE IF EXISTS `auth_tag_structure`;
68 CREATE TABLE `auth_tag_structure` (
69   `authtypecode` varchar(10) NOT NULL default '',
70   `tagfield` varchar(3) NOT NULL default '',
71   `liblibrarian` varchar(255) NOT NULL default '',
72   `libopac` varchar(255) NOT NULL default '',
73   `repeatable` tinyint(4) NOT NULL default 0,
74   `mandatory` tinyint(4) NOT NULL default 0,
75   `authorised_value` varchar(10) default NULL,
76   PRIMARY KEY  (`authtypecode`,`tagfield`),
77   CONSTRAINT `auth_tag_structure_ibfk_1` FOREIGN KEY (`authtypecode`) REFERENCES `auth_types` (`authtypecode`) ON DELETE CASCADE ON UPDATE CASCADE
78 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
79
80 --
81 -- Table structure for table `auth_types`
82 --
83
84 DROP TABLE IF EXISTS `auth_types`;
85 CREATE TABLE `auth_types` (
86   `authtypecode` varchar(10) NOT NULL default '',
87   `authtypetext` varchar(255) NOT NULL default '',
88   `auth_tag_to_report` varchar(3) NOT NULL default '',
89   `summary` mediumtext NOT NULL,
90   PRIMARY KEY  (`authtypecode`)
91 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
92
93 --
94 -- Table structure for table `authorised_values`
95 --
96
97 DROP TABLE IF EXISTS `authorised_values`;
98 CREATE TABLE `authorised_values` (
99   `id` int(11) NOT NULL auto_increment,
100   `category` varchar(10) NOT NULL default '',
101   `authorised_value` varchar(80) NOT NULL default '',
102   `lib` varchar(80) default NULL,
103   `lib_opac` VARCHAR(80) default NULL,
104   `imageurl` varchar(200) default NULL,
105   PRIMARY KEY  (`id`),
106   KEY `name` (`category`),
107   KEY `lib` (`lib`)
108 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
109
110 --
111 -- Table structure for table `biblio`
112 --
113
114 DROP TABLE IF EXISTS `biblio`;
115 CREATE TABLE `biblio` (
116   `biblionumber` int(11) NOT NULL auto_increment,
117   `frameworkcode` varchar(4) NOT NULL default '',
118   `author` mediumtext,
119   `title` mediumtext,
120   `unititle` mediumtext,
121   `notes` mediumtext,
122   `serial` tinyint(1) default NULL,
123   `seriestitle` mediumtext,
124   `copyrightdate` smallint(6) default NULL,
125   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
126   `datecreated` DATE NOT NULL,
127   `abstract` mediumtext,
128   PRIMARY KEY  (`biblionumber`),
129   KEY `blbnoidx` (`biblionumber`)
130 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
131
132 --
133 -- Table structure for table `biblio_framework`
134 --
135
136 DROP TABLE IF EXISTS `biblio_framework`;
137 CREATE TABLE `biblio_framework` (
138   `frameworkcode` varchar(4) NOT NULL default '',
139   `frameworktext` varchar(255) NOT NULL default '',
140   PRIMARY KEY  (`frameworkcode`)
141 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
142
143 --
144 -- Table structure for table `biblioitems`
145 --
146
147 DROP TABLE IF EXISTS `biblioitems`;
148 CREATE TABLE `biblioitems` (
149   `biblioitemnumber` int(11) NOT NULL auto_increment,
150   `biblionumber` int(11) NOT NULL default 0,
151   `volume` mediumtext,
152   `number` mediumtext,
153   `itemtype` varchar(10) default NULL,
154   `isbn` varchar(30) default NULL,
155   `issn` varchar(9) default NULL,
156   `publicationyear` text,
157   `publishercode` varchar(255) default NULL,
158   `volumedate` date default NULL,
159   `volumedesc` text,
160   `collectiontitle` mediumtext default NULL,
161   `collectionissn` text default NULL,
162   `collectionvolume` mediumtext default NULL,
163   `editionstatement` text default NULL,
164   `editionresponsibility` text default NULL,
165   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
166   `illus` varchar(255) default NULL,
167   `pages` varchar(255) default NULL,
168   `notes` mediumtext,
169   `size` varchar(255) default NULL,
170   `place` varchar(255) default NULL,
171   `lccn` varchar(25) default NULL,
172   `marc` longblob,
173   `url` varchar(255) default NULL,
174   `cn_source` varchar(10) default NULL,
175   `cn_class` varchar(30) default NULL,
176   `cn_item` varchar(10) default NULL,
177   `cn_suffix` varchar(10) default NULL,
178   `cn_sort` varchar(30) default NULL,
179   `totalissues` int(10),
180   `marcxml` longtext NOT NULL,
181   PRIMARY KEY  (`biblioitemnumber`),
182   KEY `bibinoidx` (`biblioitemnumber`),
183   KEY `bibnoidx` (`biblionumber`),
184   KEY `isbn` (`isbn`),
185   KEY `publishercode` (`publishercode`),
186   CONSTRAINT `biblioitems_ibfk_1` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
187 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
188
189 --
190 -- Table structure for table `borrowers`
191 --
192
193 DROP TABLE IF EXISTS `borrowers`;
194 CREATE TABLE `borrowers` (
195   `borrowernumber` int(11) NOT NULL auto_increment,
196   `cardnumber` varchar(16) default NULL,
197   `surname` mediumtext NOT NULL,
198   `firstname` text,
199   `title` mediumtext,
200   `othernames` mediumtext,
201   `initials` text,
202   `streetnumber` varchar(10) default NULL,
203   `streettype` varchar(50) default NULL,
204   `address` mediumtext NOT NULL,
205   `address2` text,
206   `city` mediumtext NOT NULL,
207   `zipcode` varchar(25) default NULL,
208   `country` text,
209   `email` mediumtext,
210   `phone` text,
211   `mobile` varchar(50) default NULL,
212   `fax` mediumtext,
213   `emailpro` text,
214   `phonepro` text,
215   `B_streetnumber` varchar(10) default NULL,
216   `B_streettype` varchar(50) default NULL,
217   `B_address` varchar(100) default NULL,
218   `B_address2` text default NULL,
219   `B_city` mediumtext,
220   `B_zipcode` varchar(25) default NULL,
221   `B_country` text,
222   `B_email` text,
223   `B_phone` mediumtext,
224   `dateofbirth` date default NULL,
225   `branchcode` varchar(10) NOT NULL default '',
226   `categorycode` varchar(10) NOT NULL default '',
227   `dateenrolled` date default NULL,
228   `dateexpiry` date default NULL,
229   `gonenoaddress` tinyint(1) default NULL,
230   `lost` tinyint(1) default NULL,
231   `debarred` tinyint(1) default NULL,
232   `contactname` mediumtext,
233   `contactfirstname` text,
234   `contacttitle` text,
235   `guarantorid` int(11) default NULL,
236   `borrowernotes` mediumtext,
237   `relationship` varchar(100) default NULL,
238   `ethnicity` varchar(50) default NULL,
239   `ethnotes` varchar(255) default NULL,
240   `sex` varchar(1) default NULL,
241   `password` varchar(30) default NULL,
242   `flags` int(11) default NULL,
243   `userid` varchar(30) default NULL,
244   `opacnote` mediumtext,
245   `contactnote` varchar(255) default NULL,
246   `sort1` varchar(80) default NULL,
247   `sort2` varchar(80) default NULL,
248   `altcontactfirstname` varchar(255) default NULL,
249   `altcontactsurname` varchar(255) default NULL,
250   `altcontactaddress1` varchar(255) default NULL,
251   `altcontactaddress2` varchar(255) default NULL,
252   `altcontactaddress3` varchar(255) default NULL,
253   `altcontactzipcode` varchar(50) default NULL,
254   `altcontactcountry` text default NULL,
255   `altcontactphone` varchar(50) default NULL,
256   `smsalertnumber` varchar(50) default NULL,
257   UNIQUE KEY `cardnumber` (`cardnumber`),
258   PRIMARY KEY `borrowernumber` (`borrowernumber`),
259   KEY `categorycode` (`categorycode`),
260   KEY `branchcode` (`branchcode`),
261   KEY `userid` (`userid`),
262   CONSTRAINT `borrowers_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`),
263   CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
264 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
265
266 --
267 -- Table structure for table `borrower_attribute_types`
268 --
269
270 DROP TABLE IF EXISTS `borrower_attribute_types`;
271 CREATE TABLE `borrower_attribute_types` (
272   `code` varchar(10) NOT NULL,
273   `description` varchar(255) NOT NULL,
274   `repeatable` tinyint(1) NOT NULL default 0,
275   `unique_id` tinyint(1) NOT NULL default 0,
276   `opac_display` tinyint(1) NOT NULL default 0,
277   `password_allowed` tinyint(1) NOT NULL default 0,
278   `staff_searchable` tinyint(1) NOT NULL default 0,
279   `authorised_value_category` varchar(10) default NULL,
280   PRIMARY KEY  (`code`)
281 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
282
283 --
284 -- Table structure for table `borrower_attributes`
285 --
286
287 DROP TABLE IF EXISTS `borrower_attributes`;
288 CREATE TABLE `borrower_attributes` (
289   `borrowernumber` int(11) NOT NULL,
290   `code` varchar(10) NOT NULL,
291   `attribute` varchar(64) default NULL,
292   `password` varchar(64) default NULL,
293   KEY `borrowernumber` (`borrowernumber`),
294   KEY `code_attribute` (`code`, `attribute`),
295   CONSTRAINT `borrower_attributes_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`)
296     ON DELETE CASCADE ON UPDATE CASCADE,
297   CONSTRAINT `borrower_attributes_ibfk_2` FOREIGN KEY (`code`) REFERENCES `borrower_attribute_types` (`code`)
298     ON DELETE CASCADE ON UPDATE CASCADE
299 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
300
301 CREATE TABLE `branch_item_rules` (
302   `branchcode` varchar(10) NOT NULL,
303   `itemtype` varchar(10) NOT NULL,
304   `holdallowed` tinyint(1) default NULL,
305   PRIMARY KEY  (`itemtype`,`branchcode`),
306   KEY `branch_item_rules_ibfk_2` (`branchcode`),
307   CONSTRAINT `branch_item_rules_ibfk_1` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`)
308     ON DELETE CASCADE ON UPDATE CASCADE,
309   CONSTRAINT `branch_item_rules_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
310     ON DELETE CASCADE ON UPDATE CASCADE
311 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
312
313 --
314 -- Table structure for table `branchcategories`
315 --
316
317 DROP TABLE IF EXISTS `branchcategories`;
318 CREATE TABLE `branchcategories` (
319   `categorycode` varchar(10) NOT NULL default '',
320   `categoryname` varchar(32),
321   `codedescription` mediumtext,
322   `categorytype` varchar(16),
323   PRIMARY KEY  (`categorycode`)
324 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
325
326 --
327 -- Table structure for table `branches`
328 --
329
330 DROP TABLE IF EXISTS `branches`;
331 CREATE TABLE `branches` (
332   `branchcode` varchar(10) NOT NULL default '',
333   `branchname` mediumtext NOT NULL,
334   `branchaddress1` mediumtext,
335   `branchaddress2` mediumtext,
336   `branchaddress3` mediumtext,
337   `branchzip` varchar(25) default NULL,
338   `branchcity` mediumtext,
339   `branchcountry` text,
340   `branchphone` mediumtext,
341   `branchfax` mediumtext,
342   `branchemail` mediumtext,
343   `branchurl` mediumtext,
344   `issuing` tinyint(4) default NULL,
345   `branchip` varchar(15) default NULL,
346   `branchprinter` varchar(100) default NULL,
347   `branchnotes` mediumtext,
348   UNIQUE KEY `branchcode` (`branchcode`)
349 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
350
351 --
352 -- Table structure for table `branchrelations`
353 --
354
355 DROP TABLE IF EXISTS `branchrelations`;
356 CREATE TABLE `branchrelations` (
357   `branchcode` varchar(10) NOT NULL default '',
358   `categorycode` varchar(10) NOT NULL default '',
359   PRIMARY KEY  (`branchcode`,`categorycode`),
360   KEY `branchcode` (`branchcode`),
361   KEY `categorycode` (`categorycode`),
362   CONSTRAINT `branchrelations_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
363   CONSTRAINT `branchrelations_ibfk_2` FOREIGN KEY (`categorycode`) REFERENCES `branchcategories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE
364 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
365
366 --
367 -- Table structure for table `branchtransfers`
368 --
369
370 DROP TABLE IF EXISTS `branchtransfers`;
371 CREATE TABLE `branchtransfers` (
372   `itemnumber` int(11) NOT NULL default 0,
373   `datesent` datetime default NULL,
374   `frombranch` varchar(10) NOT NULL default '',
375   `datearrived` datetime default NULL,
376   `tobranch` varchar(10) NOT NULL default '',
377   `comments` mediumtext,
378   KEY `frombranch` (`frombranch`),
379   KEY `tobranch` (`tobranch`),
380   KEY `itemnumber` (`itemnumber`),
381   CONSTRAINT `branchtransfers_ibfk_1` FOREIGN KEY (`frombranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
382   CONSTRAINT `branchtransfers_ibfk_2` FOREIGN KEY (`tobranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
383   CONSTRAINT `branchtransfers_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE
384 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
385
386
387 --
388 -- Table structure for table `browser`
389 --
390 DROP TABLE IF EXISTS `browser`;
391 CREATE TABLE `browser` (
392   `level` int(11) NOT NULL,
393   `classification` varchar(20) NOT NULL,
394   `description` varchar(255) NOT NULL,
395   `number` bigint(20) NOT NULL,
396   `endnode` tinyint(4) NOT NULL
397 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
398
399 --
400 -- Table structure for table `categories`
401 --
402
403 DROP TABLE IF EXISTS `categories`;
404 CREATE TABLE `categories` (
405   `categorycode` varchar(10) NOT NULL default '',
406   `description` mediumtext,
407   `enrolmentperiod` smallint(6) default NULL,
408   `enrolmentperioddate` DATE NULL DEFAULT NULL,
409   `upperagelimit` smallint(6) default NULL,
410   `dateofbirthrequired` tinyint(1) default NULL,
411   `finetype` varchar(30) default NULL,
412   `bulk` tinyint(1) default NULL,
413   `enrolmentfee` decimal(28,6) default NULL,
414   `overduenoticerequired` tinyint(1) default NULL,
415   `issuelimit` smallint(6) default NULL,
416   `reservefee` decimal(28,6) default NULL,
417   `category_type` varchar(1) NOT NULL default 'A',
418   PRIMARY KEY  (`categorycode`),
419   UNIQUE KEY `categorycode` (`categorycode`)
420 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
421
422 --
423 -- Table structure for table `borrower_branch_circ_rules`
424 --
425
426 DROP TABLE IF EXISTS `branch_borrower_circ_rules`;
427 CREATE TABLE `branch_borrower_circ_rules` (
428   `branchcode` VARCHAR(10) NOT NULL,
429   `categorycode` VARCHAR(10) NOT NULL,
430   `maxissueqty` int(4) default NULL,
431   PRIMARY KEY (`categorycode`, `branchcode`),
432   CONSTRAINT `branch_borrower_circ_rules_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`)
433     ON DELETE CASCADE ON UPDATE CASCADE,
434   CONSTRAINT `branch_borrower_circ_rules_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
435     ON DELETE CASCADE ON UPDATE CASCADE
436 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
437
438 --
439 -- Table structure for table `default_borrower_circ_rules`
440 --
441
442 DROP TABLE IF EXISTS `default_borrower_circ_rules`;
443 CREATE TABLE `default_borrower_circ_rules` (
444   `categorycode` VARCHAR(10) NOT NULL,
445   `maxissueqty` int(4) default NULL,
446   PRIMARY KEY (`categorycode`),
447   CONSTRAINT `borrower_borrower_circ_rules_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`)
448     ON DELETE CASCADE ON UPDATE CASCADE
449 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
450
451 --
452 -- Table structure for table `default_branch_circ_rules`
453 --
454
455 DROP TABLE IF EXISTS `default_branch_circ_rules`;
456 CREATE TABLE `default_branch_circ_rules` (
457   `branchcode` VARCHAR(10) NOT NULL,
458   `maxissueqty` int(4) default NULL,
459   `holdallowed` tinyint(1) default NULL,
460   PRIMARY KEY (`branchcode`),
461   CONSTRAINT `default_branch_circ_rules_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`)
462     ON DELETE CASCADE ON UPDATE CASCADE
463 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
464
465 --
466 -- Table structure for table `default_branch_item_rules`
467 --
468
469 CREATE TABLE `default_branch_item_rules` (
470   `itemtype` varchar(10) NOT NULL,
471   `holdallowed` tinyint(1) default NULL,
472   PRIMARY KEY  (`itemtype`),
473   CONSTRAINT `default_branch_item_rules_ibfk_1` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`)
474     ON DELETE CASCADE ON UPDATE CASCADE
475 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
476
477 --
478 -- Table structure for table `default_circ_rules`
479 --
480
481 DROP TABLE IF EXISTS `default_circ_rules`;
482 CREATE TABLE `default_circ_rules` (
483     `singleton` enum('singleton') NOT NULL default 'singleton',
484     `maxissueqty` int(4) default NULL,
485     `holdallowed` int(1) default NULL,
486     PRIMARY KEY (`singleton`)
487 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
488
489 --
490 -- Table structure for table `cities`
491 --
492
493 DROP TABLE IF EXISTS `cities`;
494 CREATE TABLE `cities` (
495   `cityid` int(11) NOT NULL auto_increment,
496   `city_name` varchar(100) NOT NULL default '',
497   `city_zipcode` varchar(20) default NULL,
498   PRIMARY KEY  (`cityid`)
499 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
500
501 --
502 -- Table structure for table `class_sort_rules`
503 --
504
505 DROP TABLE IF EXISTS `class_sort_rules`;
506 CREATE TABLE `class_sort_rules` (
507   `class_sort_rule` varchar(10) NOT NULL default '',
508   `description` mediumtext,
509   `sort_routine` varchar(30) NOT NULL default '',
510   PRIMARY KEY (`class_sort_rule`),
511   UNIQUE KEY `class_sort_rule_idx` (`class_sort_rule`)
512 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
513
514 --
515 -- Table structure for table `class_sources`
516 --
517
518 DROP TABLE IF EXISTS `class_sources`;
519 CREATE TABLE `class_sources` (
520   `cn_source` varchar(10) NOT NULL default '',
521   `description` mediumtext,
522   `used` tinyint(4) NOT NULL default 0,
523   `class_sort_rule` varchar(10) NOT NULL default '',
524   PRIMARY KEY (`cn_source`),
525   UNIQUE KEY `cn_source_idx` (`cn_source`),
526   KEY `used_idx` (`used`),
527   CONSTRAINT `class_source_ibfk_1` FOREIGN KEY (`class_sort_rule`) REFERENCES `class_sort_rules` (`class_sort_rule`)
528 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
529
530 --
531 -- Table structure for table `currency`
532 --
533
534 DROP TABLE IF EXISTS `currency`;
535 CREATE TABLE `currency` (
536   `currency` varchar(10) NOT NULL default '',
537   `symbol` varchar(5) default NULL,
538   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
539   `rate` float(7,5) default NULL,
540   `active` tinyint(1) default NULL,
541   PRIMARY KEY  (`currency`)
542 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
543
544 --
545 -- Table structure for table `deletedbiblio`
546 --
547
548 DROP TABLE IF EXISTS `deletedbiblio`;
549 CREATE TABLE `deletedbiblio` (
550   `biblionumber` int(11) NOT NULL default 0,
551   `frameworkcode` varchar(4) NOT NULL default '',
552   `author` mediumtext,
553   `title` mediumtext,
554   `unititle` mediumtext,
555   `notes` mediumtext,
556   `serial` tinyint(1) default NULL,
557   `seriestitle` mediumtext,
558   `copyrightdate` smallint(6) default NULL,
559   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
560   `datecreated` DATE NOT NULL,
561   `abstract` mediumtext,
562   PRIMARY KEY  (`biblionumber`),
563   KEY `blbnoidx` (`biblionumber`)
564 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
565
566 --
567 -- Table structure for table `deletedbiblioitems`
568 --
569
570 DROP TABLE IF EXISTS `deletedbiblioitems`;
571 CREATE TABLE `deletedbiblioitems` (
572   `biblioitemnumber` int(11) NOT NULL default 0,
573   `biblionumber` int(11) NOT NULL default 0,
574   `volume` mediumtext,
575   `number` mediumtext,
576   `itemtype` varchar(10) default NULL,
577   `isbn` varchar(30) default NULL,
578   `issn` varchar(9) default NULL,
579   `publicationyear` text,
580   `publishercode` varchar(255) default NULL,
581   `volumedate` date default NULL,
582   `volumedesc` text,
583   `collectiontitle` mediumtext default NULL,
584   `collectionissn` text default NULL,
585   `collectionvolume` mediumtext default NULL,
586   `editionstatement` text default NULL,
587   `editionresponsibility` text default NULL,
588   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
589   `illus` varchar(255) default NULL,
590   `pages` varchar(255) default NULL,
591   `notes` mediumtext,
592   `size` varchar(255) default NULL,
593   `place` varchar(255) default NULL,
594   `lccn` varchar(25) default NULL,
595   `marc` longblob,
596   `url` varchar(255) default NULL,
597   `cn_source` varchar(10) default NULL,
598   `cn_class` varchar(30) default NULL,
599   `cn_item` varchar(10) default NULL,
600   `cn_suffix` varchar(10) default NULL,
601   `cn_sort` varchar(30) default NULL,
602   `totalissues` int(10),
603   `marcxml` longtext NOT NULL,
604   PRIMARY KEY  (`biblioitemnumber`),
605   KEY `bibinoidx` (`biblioitemnumber`),
606   KEY `bibnoidx` (`biblionumber`),
607   KEY `isbn` (`isbn`),
608   KEY `publishercode` (`publishercode`)
609 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
610
611 --
612 -- Table structure for table `deletedborrowers`
613 --
614
615 DROP TABLE IF EXISTS `deletedborrowers`;
616 CREATE TABLE `deletedborrowers` (
617   `borrowernumber` int(11) NOT NULL default 0,
618   `cardnumber` varchar(9) NOT NULL default '',
619   `surname` mediumtext NOT NULL,
620   `firstname` text,
621   `title` mediumtext,
622   `othernames` mediumtext,
623   `initials` text,
624   `streetnumber` varchar(10) default NULL,
625   `streettype` varchar(50) default NULL,
626   `address` mediumtext NOT NULL,
627   `address2` text,
628   `city` mediumtext NOT NULL,
629   `zipcode` varchar(25) default NULL,
630   `country` text,
631   `email` mediumtext,
632   `phone` text,
633   `mobile` varchar(50) default NULL,
634   `fax` mediumtext,
635   `emailpro` text,
636   `phonepro` text,
637   `B_streetnumber` varchar(10) default NULL,
638   `B_streettype` varchar(50) default NULL,
639   `B_address` varchar(100) default NULL,
640   `B_address2` text default NULL,
641   `B_city` mediumtext,
642   `B_zipcode` varchar(25) default NULL,
643   `B_country` text,
644   `B_email` text,
645   `B_phone` mediumtext,
646   `dateofbirth` date default NULL,
647   `branchcode` varchar(10) NOT NULL default '',
648   `categorycode` varchar(10) default NULL,
649   `dateenrolled` date default NULL,
650   `dateexpiry` date default NULL,
651   `gonenoaddress` tinyint(1) default NULL,
652   `lost` tinyint(1) default NULL,
653   `debarred` tinyint(1) default NULL,
654   `contactname` mediumtext,
655   `contactfirstname` text,
656   `contacttitle` text,
657   `guarantorid` int(11) default NULL,
658   `borrowernotes` mediumtext,
659   `relationship` varchar(100) default NULL,
660   `ethnicity` varchar(50) default NULL,
661   `ethnotes` varchar(255) default NULL,
662   `sex` varchar(1) default NULL,
663   `password` varchar(30) default NULL,
664   `flags` int(11) default NULL,
665   `userid` varchar(30) default NULL,
666   `opacnote` mediumtext,
667   `contactnote` varchar(255) default NULL,
668   `sort1` varchar(80) default NULL,
669   `sort2` varchar(80) default NULL,
670   `altcontactfirstname` varchar(255) default NULL,
671   `altcontactsurname` varchar(255) default NULL,
672   `altcontactaddress1` varchar(255) default NULL,
673   `altcontactaddress2` varchar(255) default NULL,
674   `altcontactaddress3` varchar(255) default NULL,
675   `altcontactzipcode` varchar(50) default NULL,
676   `altcontactcountry` text default NULL,
677   `altcontactphone` varchar(50) default NULL,
678   `smsalertnumber` varchar(50) default NULL,
679   KEY `borrowernumber` (`borrowernumber`),
680   KEY `cardnumber` (`cardnumber`)
681 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
682
683 --
684 -- Table structure for table `deleteditems`
685 --
686
687 DROP TABLE IF EXISTS `deleteditems`;
688 CREATE TABLE `deleteditems` (
689   `itemnumber` int(11) NOT NULL default 0,
690   `biblionumber` int(11) NOT NULL default 0,
691   `biblioitemnumber` int(11) NOT NULL default 0,
692   `barcode` varchar(20) default NULL,
693   `dateaccessioned` date default NULL,
694   `booksellerid` mediumtext default NULL,
695   `homebranch` varchar(10) default NULL,
696   `price` decimal(8,2) default NULL,
697   `replacementprice` decimal(8,2) default NULL,
698   `replacementpricedate` date default NULL,
699   `datelastborrowed` date default NULL,
700   `datelastseen` date default NULL,
701   `stack` tinyint(1) default NULL,
702   `notforloan` tinyint(1) NOT NULL default 0,
703   `damaged` tinyint(1) NOT NULL default 0,
704   `itemlost` tinyint(1) NOT NULL default 0,
705   `wthdrawn` tinyint(1) NOT NULL default 0,
706   `itemcallnumber` varchar(255) default NULL,
707   `issues` smallint(6) default NULL,
708   `renewals` smallint(6) default NULL,
709   `reserves` smallint(6) default NULL,
710   `restricted` tinyint(1) default NULL,
711   `itemnotes` mediumtext,
712   `holdingbranch` varchar(10) default NULL,
713   `paidfor` mediumtext,
714   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
715   `location` varchar(80) default NULL,
716   `permanent_location` varchar(80) default NULL,
717   `onloan` date default NULL,
718   `cn_source` varchar(10) default NULL,
719   `cn_sort` varchar(30) default NULL,
720   `ccode` varchar(10) default NULL,
721   `materials` varchar(10) default NULL,
722   `uri` varchar(255) default NULL,
723   `itype` varchar(10) default NULL,
724   `more_subfields_xml` longtext default NULL,
725   `enumchron` varchar(80) default NULL,
726   `copynumber` varchar(32) default NULL,
727   `stocknumber` varchar(32) default NULL,
728   `marc` longblob,
729   PRIMARY KEY  (`itemnumber`),
730   KEY `delitembarcodeidx` (`barcode`),
731   KEY `delitemstocknumberidx` (`stocknumber`),
732   KEY `delitembinoidx` (`biblioitemnumber`),
733   KEY `delitembibnoidx` (`biblionumber`),
734   KEY `delhomebranch` (`homebranch`),
735   KEY `delholdingbranch` (`holdingbranch`)
736 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
737
738 --
739 -- Table structure for table `ethnicity`
740 --
741
742 DROP TABLE IF EXISTS `ethnicity`;
743 CREATE TABLE `ethnicity` (
744   `code` varchar(10) NOT NULL default '',
745   `name` varchar(255) default NULL,
746   PRIMARY KEY  (`code`)
747 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
748
749 --
750 -- Table structure for table `export_format`
751 --
752
753 DROP TABLE IF EXISTS `export_format`;
754 CREATE TABLE `export_format` (
755   `export_format_id` int(11) NOT NULL auto_increment,
756   `profile` varchar(255) NOT NULL,
757   `description` mediumtext NOT NULL,
758   `marcfields` mediumtext NOT NULL,
759   `csv_separator` varchar(2) NOT NULL,
760   `field_separator` varchar(2) NOT NULL,
761   `subfield_separator` varchar(2) NOT NULL,
762   `encoding` varchar(255) NOT NULL,
763   PRIMARY KEY  (`export_format_id`)
764 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Used for CSV export';
765
766
767 --
768 -- Table structure for table `hold_fill_targets`
769 --
770
771 DROP TABLE IF EXISTS `hold_fill_targets`;
772 CREATE TABLE hold_fill_targets (
773   `borrowernumber` int(11) NOT NULL,
774   `biblionumber` int(11) NOT NULL,
775   `itemnumber` int(11) NOT NULL,
776   `source_branchcode`  varchar(10) default NULL,
777   `item_level_request` tinyint(4) NOT NULL default 0,
778   PRIMARY KEY `itemnumber` (`itemnumber`),
779   KEY `bib_branch` (`biblionumber`, `source_branchcode`),
780   CONSTRAINT `hold_fill_targets_ibfk_1` FOREIGN KEY (`borrowernumber`)
781     REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
782   CONSTRAINT `hold_fill_targets_ibfk_2` FOREIGN KEY (`biblionumber`)
783     REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE,
784   CONSTRAINT `hold_fill_targets_ibfk_3` FOREIGN KEY (`itemnumber`)
785     REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
786   CONSTRAINT `hold_fill_targets_ibfk_4` FOREIGN KEY (`source_branchcode`)
787     REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE
788 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
789
790 --
791 -- Table structure for table `import_batches`
792 --
793
794 DROP TABLE IF EXISTS `import_batches`;
795 CREATE TABLE `import_batches` (
796   `import_batch_id` int(11) NOT NULL auto_increment,
797   `matcher_id` int(11) default NULL,
798   `template_id` int(11) default NULL,
799   `branchcode` varchar(10) default NULL,
800   `num_biblios` int(11) NOT NULL default 0,
801   `num_items` int(11) NOT NULL default 0,
802   `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
803   `overlay_action` enum('replace', 'create_new', 'use_template', 'ignore') NOT NULL default 'create_new',
804   `nomatch_action` enum('create_new', 'ignore') NOT NULL default 'create_new',
805   `item_action` enum('always_add', 'add_only_for_matches', 'add_only_for_new', 'ignore') NOT NULL default 'always_add',
806   `import_status` enum('staging', 'staged', 'importing', 'imported', 'reverting', 'reverted', 'cleaned') NOT NULL default 'staging',
807   `batch_type` enum('batch', 'z3950') NOT NULL default 'batch',
808   `file_name` varchar(100),
809   `comments` mediumtext,
810   PRIMARY KEY (`import_batch_id`),
811   KEY `branchcode` (`branchcode`)
812 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
813
814 --
815 -- Table structure for table `import_records`
816 --
817
818 DROP TABLE IF EXISTS `import_records`;
819 CREATE TABLE `import_records` (
820   `import_record_id` int(11) NOT NULL auto_increment,
821   `import_batch_id` int(11) NOT NULL,
822   `branchcode` varchar(10) default NULL,
823   `record_sequence` int(11) NOT NULL default 0,
824   `upload_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
825   `import_date` DATE default NULL,
826   `marc` longblob NOT NULL,
827   `marcxml` longtext NOT NULL,
828   `marcxml_old` longtext NOT NULL,
829   `record_type` enum('biblio', 'auth', 'holdings') NOT NULL default 'biblio',
830   `overlay_status` enum('no_match', 'auto_match', 'manual_match', 'match_applied') NOT NULL default 'no_match',
831   `status` enum('error', 'staged', 'imported', 'reverted', 'items_reverted', 'ignored') NOT NULL default 'staged',
832   `import_error` mediumtext,
833   `encoding` varchar(40) NOT NULL default '',
834   `z3950random` varchar(40) default NULL,
835   PRIMARY KEY (`import_record_id`),
836   CONSTRAINT `import_records_ifbk_1` FOREIGN KEY (`import_batch_id`)
837              REFERENCES `import_batches` (`import_batch_id`) ON DELETE CASCADE ON UPDATE CASCADE,
838   KEY `branchcode` (`branchcode`),
839   KEY `batch_sequence` (`import_batch_id`, `record_sequence`)
840 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
841
842 --
843 -- Table structure for `import_record_matches`
844 --
845 DROP TABLE IF EXISTS `import_record_matches`;
846 CREATE TABLE `import_record_matches` (
847   `import_record_id` int(11) NOT NULL,
848   `candidate_match_id` int(11) NOT NULL,
849   `score` int(11) NOT NULL default 0,
850   CONSTRAINT `import_record_matches_ibfk_1` FOREIGN KEY (`import_record_id`)
851              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
852   KEY `record_score` (`import_record_id`, `score`)
853 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
854
855 --
856 -- Table structure for table `import_biblios`
857 --
858
859 DROP TABLE IF EXISTS `import_biblios`;
860 CREATE TABLE `import_biblios` (
861   `import_record_id` int(11) NOT NULL,
862   `matched_biblionumber` int(11) default NULL,
863   `control_number` varchar(25) default NULL,
864   `original_source` varchar(25) default NULL,
865   `title` varchar(128) default NULL,
866   `author` varchar(80) default NULL,
867   `isbn` varchar(30) default NULL,
868   `issn` varchar(9) default NULL,
869   `has_items` tinyint(1) NOT NULL default 0,
870   CONSTRAINT `import_biblios_ibfk_1` FOREIGN KEY (`import_record_id`)
871              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
872   KEY `matched_biblionumber` (`matched_biblionumber`),
873   KEY `title` (`title`),
874   KEY `isbn` (`isbn`)
875 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
876
877 --
878 -- Table structure for table `import_items`
879 --
880
881 DROP TABLE IF EXISTS `import_items`;
882 CREATE TABLE `import_items` (
883   `import_items_id` int(11) NOT NULL auto_increment,
884   `import_record_id` int(11) NOT NULL,
885   `itemnumber` int(11) default NULL,
886   `branchcode` varchar(10) default NULL,
887   `status` enum('error', 'staged', 'imported', 'reverted', 'ignored') NOT NULL default 'staged',
888   `marcxml` longtext NOT NULL,
889   `import_error` mediumtext,
890   PRIMARY KEY (`import_items_id`),
891   CONSTRAINT `import_items_ibfk_1` FOREIGN KEY (`import_record_id`)
892              REFERENCES `import_records` (`import_record_id`) ON DELETE CASCADE ON UPDATE CASCADE,
893   KEY `itemnumber` (`itemnumber`),
894   KEY `branchcode` (`branchcode`)
895 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
896
897 --
898 -- Table structure for table `issues`
899 --
900
901 DROP TABLE IF EXISTS `issues`;
902 CREATE TABLE `issues` (
903   `borrowernumber` int(11) default NULL,
904   `itemnumber` int(11) default NULL,
905   `date_due` date default NULL,
906   `branchcode` varchar(10) default NULL,
907   `issuingbranch` varchar(18) default NULL,
908   `returndate` date default NULL,
909   `lastreneweddate` date default NULL,
910   `return` varchar(4) default NULL,
911   `renewals` tinyint(4) default NULL,
912   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
913   `issuedate` date default NULL,
914   KEY `issuesborridx` (`borrowernumber`),
915   KEY `issuesitemidx` (`itemnumber`),
916   KEY `bordate` (`borrowernumber`,`timestamp`),
917   CONSTRAINT `issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE SET NULL ON UPDATE SET NULL,
918   CONSTRAINT `issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL
919 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
920
921 --
922 -- Table structure for table `issuingrules`
923 --
924
925 DROP TABLE IF EXISTS `issuingrules`;
926 CREATE TABLE `issuingrules` (
927   `categorycode` varchar(10) NOT NULL default '',
928   `itemtype` varchar(10) NOT NULL default '',
929   `restrictedtype` tinyint(1) default NULL,
930   `rentaldiscount` decimal(28,6) default NULL,
931   `reservecharge` decimal(28,6) default NULL,
932   `fine` decimal(28,6) default NULL,
933   `finedays` int(11) default NULL,
934   `firstremind` int(11) default NULL,
935   `chargeperiod` int(11) default NULL,
936   `accountsent` int(11) default NULL,
937   `chargename` varchar(100) default NULL,
938   `maxissueqty` int(4) default NULL,
939   `issuelength` int(4) default NULL,
940   `renewalsallowed` smallint(6) NOT NULL default "0",
941   `reservesallowed` smallint(6) NOT NULL default "0",
942   `branchcode` varchar(10) NOT NULL default '',
943   PRIMARY KEY  (`branchcode`,`categorycode`,`itemtype`),
944   KEY `categorycode` (`categorycode`),
945   KEY `itemtype` (`itemtype`)
946 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
947
948 --
949 -- Table structure for table `items`
950 --
951
952 DROP TABLE IF EXISTS `items`;
953 CREATE TABLE `items` (
954   `itemnumber` int(11) NOT NULL auto_increment,
955   `biblionumber` int(11) NOT NULL default 0,
956   `biblioitemnumber` int(11) NOT NULL default 0,
957   `barcode` varchar(20) default NULL,
958   `dateaccessioned` date default NULL,
959   `booksellerid` mediumtext default NULL,
960   `homebranch` varchar(10) default NULL,
961   `price` decimal(8,2) default NULL,
962   `replacementprice` decimal(8,2) default NULL,
963   `replacementpricedate` date default NULL,
964   `datelastborrowed` date default NULL,
965   `datelastseen` date default NULL,
966   `stack` tinyint(1) default NULL,
967   `notforloan` tinyint(1) NOT NULL default 0,
968   `damaged` tinyint(1) NOT NULL default 0,
969   `itemlost` tinyint(1) NOT NULL default 0,
970   `wthdrawn` tinyint(1) NOT NULL default 0,
971   `itemcallnumber` varchar(255) default NULL,
972   `issues` smallint(6) default NULL,
973   `renewals` smallint(6) default NULL,
974   `reserves` smallint(6) default NULL,
975   `restricted` tinyint(1) default NULL,
976   `itemnotes` mediumtext,
977   `holdingbranch` varchar(10) default NULL,
978   `paidfor` mediumtext,
979   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
980   `location` varchar(80) default NULL,
981   `permanent_location` varchar(80) default NULL,
982   `onloan` date default NULL,
983   `cn_source` varchar(10) default NULL,
984   `cn_sort` varchar(30) default NULL,
985   `ccode` varchar(10) default NULL,
986   `materials` varchar(10) default NULL,
987   `uri` varchar(255) default NULL,
988   `itype` varchar(10) default NULL,
989   `more_subfields_xml` longtext default NULL,
990   `enumchron` varchar(80) default NULL,
991   `copynumber` varchar(32) default NULL,
992   `stocknumber` varchar(32) default NULL,
993   PRIMARY KEY  (`itemnumber`),
994   UNIQUE KEY `itembarcodeidx` (`barcode`),
995   UNIQUE KEY `itemstocknumberidx` (`stocknumber`),
996   KEY `itembinoidx` (`biblioitemnumber`),
997   KEY `itembibnoidx` (`biblionumber`),
998   KEY `homebranch` (`homebranch`),
999   KEY `holdingbranch` (`holdingbranch`),
1000   CONSTRAINT `items_ibfk_1` FOREIGN KEY (`biblioitemnumber`) REFERENCES `biblioitems` (`biblioitemnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1001   CONSTRAINT `items_ibfk_2` FOREIGN KEY (`homebranch`) REFERENCES `branches` (`branchcode`) ON UPDATE CASCADE,
1002   CONSTRAINT `items_ibfk_3` FOREIGN KEY (`holdingbranch`) REFERENCES `branches` (`branchcode`) ON UPDATE CASCADE
1003 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1004
1005 --
1006 -- Table structure for table `itemtypes`
1007 --
1008
1009 DROP TABLE IF EXISTS `itemtypes`;
1010 CREATE TABLE `itemtypes` (
1011   `itemtype` varchar(10) NOT NULL default '',
1012   `description` mediumtext,
1013   `rentalcharge` double(16,4) default NULL,
1014   `notforloan` smallint(6) default NULL,
1015   `imageurl` varchar(200) default NULL,
1016   `summary` text,
1017   PRIMARY KEY  (`itemtype`),
1018   UNIQUE KEY `itemtype` (`itemtype`)
1019 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1020
1021 --
1022 -- Table structure for table `creator_batches`
1023 --
1024
1025 DROP TABLE IF EXISTS `creator_batches`;
1026 SET @saved_cs_client     = @@character_set_client;
1027 SET character_set_client = utf8;
1028 CREATE TABLE `creator_batches` (
1029   `label_id` int(11) NOT NULL AUTO_INCREMENT,
1030   `batch_id` int(10) NOT NULL DEFAULT '1',
1031   `item_number` int(11) DEFAULT NULL,
1032   `borrower_number` int(11) DEFAULT NULL,
1033   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
1034   `branch_code` varchar(10) NOT NULL DEFAULT 'NB',
1035   `creator` char(15) NOT NULL DEFAULT 'Labels',
1036   PRIMARY KEY (`label_id`),
1037   KEY `branch_fk_constraint` (`branch_code`),
1038   KEY `item_fk_constraint` (`item_number`),
1039   KEY `borrower_fk_constraint` (`borrower_number`),
1040   CONSTRAINT `creator_batches_ibfk_1` FOREIGN KEY (`borrower_number`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1041   CONSTRAINT `creator_batches_ibfk_2` FOREIGN KEY (`branch_code`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE,
1042   CONSTRAINT `creator_batches_ibfk_3` FOREIGN KEY (`item_number`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE
1043 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1044
1045 --
1046 -- Table structure for table `creator_images`
1047 --
1048
1049 DROP TABLE IF EXISTS `creator_images`;
1050 SET @saved_cs_client     = @@character_set_client;
1051 SET character_set_client = utf8;
1052 CREATE TABLE `creator_images` (
1053   `image_id` int(4) NOT NULL AUTO_INCREMENT,
1054   `imagefile` mediumblob,
1055   `image_name` char(20) NOT NULL DEFAULT 'DEFAULT',
1056   PRIMARY KEY (`image_id`),
1057   UNIQUE KEY `image_name_index` (`image_name`)
1058 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1059
1060 --
1061 -- Table structure for table `creator_layouts`
1062 --
1063
1064 DROP TABLE IF EXISTS `creator_layouts`;
1065 SET @saved_cs_client     = @@character_set_client;
1066 SET character_set_client = utf8;
1067 CREATE TABLE `creator_layouts` (
1068   `layout_id` int(4) NOT NULL AUTO_INCREMENT,
1069   `barcode_type` char(100) NOT NULL DEFAULT 'CODE39',
1070   `start_label` int(2) NOT NULL DEFAULT '1',
1071   `printing_type` char(32) NOT NULL DEFAULT 'BAR',
1072   `layout_name` char(20) NOT NULL DEFAULT 'DEFAULT',
1073   `guidebox` int(1) DEFAULT '0',
1074   `font` char(10) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT 'TR',
1075   `font_size` int(4) NOT NULL DEFAULT '10',
1076   `units` char(20) NOT NULL DEFAULT 'POINT',
1077   `callnum_split` int(1) DEFAULT '0',
1078   `text_justify` char(1) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT 'L',
1079   `format_string` varchar(210) NOT NULL DEFAULT 'barcode',
1080   `layout_xml` text NOT NULL,
1081   `creator` char(15) NOT NULL DEFAULT 'Labels',
1082   PRIMARY KEY (`layout_id`)
1083 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1084
1085 --
1086 -- Table structure for table `creator_templates`
1087 --
1088
1089 DROP TABLE IF EXISTS `creator_templates`;
1090 SET @saved_cs_client     = @@character_set_client;
1091 SET character_set_client = utf8;
1092 CREATE TABLE `creator_templates` (
1093   `template_id` int(4) NOT NULL AUTO_INCREMENT,
1094   `profile_id` int(4) DEFAULT NULL,
1095   `template_code` char(100) NOT NULL DEFAULT 'DEFAULT TEMPLATE',
1096   `template_desc` char(100) NOT NULL DEFAULT 'Default description',
1097   `page_width` float NOT NULL DEFAULT '0',
1098   `page_height` float NOT NULL DEFAULT '0',
1099   `label_width` float NOT NULL DEFAULT '0',
1100   `label_height` float NOT NULL DEFAULT '0',
1101   `top_text_margin` float NOT NULL DEFAULT '0',
1102   `left_text_margin` float NOT NULL DEFAULT '0',
1103   `top_margin` float NOT NULL DEFAULT '0',
1104   `left_margin` float NOT NULL DEFAULT '0',
1105   `cols` int(2) NOT NULL DEFAULT '0',
1106   `rows` int(2) NOT NULL DEFAULT '0',
1107   `col_gap` float NOT NULL DEFAULT '0',
1108   `row_gap` float NOT NULL DEFAULT '0',
1109   `units` char(20) NOT NULL DEFAULT 'POINT',
1110   `creator` char(15) NOT NULL DEFAULT 'Labels',
1111   PRIMARY KEY (`template_id`),
1112   KEY `template_profile_fk_constraint` (`profile_id`)
1113 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1114
1115 --
1116 -- Table structure for table `letter`
1117 --
1118
1119 DROP TABLE IF EXISTS `letter`;
1120 CREATE TABLE `letter` (
1121   `module` varchar(20) NOT NULL default '',
1122   `code` varchar(20) NOT NULL default '',
1123   `name` varchar(100) NOT NULL default '',
1124   `title` varchar(200) NOT NULL default '',
1125   `content` text,
1126   PRIMARY KEY  (`module`,`code`)
1127 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1128
1129 --
1130 -- Table structure for table `marc_subfield_structure`
1131 --
1132
1133 DROP TABLE IF EXISTS `marc_subfield_structure`;
1134 CREATE TABLE `marc_subfield_structure` (
1135   `tagfield` varchar(3) NOT NULL default '',
1136   `tagsubfield` varchar(1) NOT NULL default '' COLLATE utf8_bin,
1137   `liblibrarian` varchar(255) NOT NULL default '',
1138   `libopac` varchar(255) NOT NULL default '',
1139   `repeatable` tinyint(4) NOT NULL default 0,
1140   `mandatory` tinyint(4) NOT NULL default 0,
1141   `kohafield` varchar(40) default NULL,
1142   `tab` tinyint(1) default NULL,
1143   `authorised_value` varchar(20) default NULL,
1144   `authtypecode` varchar(20) default NULL,
1145   `value_builder` varchar(80) default NULL,
1146   `isurl` tinyint(1) default NULL,
1147   `hidden` tinyint(1) default NULL,
1148   `frameworkcode` varchar(4) NOT NULL default '',
1149   `seealso` varchar(1100) default NULL,
1150   `link` varchar(80) default NULL,
1151   `defaultvalue` text default NULL,
1152   PRIMARY KEY  (`frameworkcode`,`tagfield`,`tagsubfield`),
1153   KEY `kohafield_2` (`kohafield`),
1154   KEY `tab` (`frameworkcode`,`tab`),
1155   KEY `kohafield` (`frameworkcode`,`kohafield`)
1156 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1157
1158 --
1159 -- Table structure for table `marc_tag_structure`
1160 --
1161
1162 DROP TABLE IF EXISTS `marc_tag_structure`;
1163 CREATE TABLE `marc_tag_structure` (
1164   `tagfield` varchar(3) NOT NULL default '',
1165   `liblibrarian` varchar(255) NOT NULL default '',
1166   `libopac` varchar(255) NOT NULL default '',
1167   `repeatable` tinyint(4) NOT NULL default 0,
1168   `mandatory` tinyint(4) NOT NULL default 0,
1169   `authorised_value` varchar(10) default NULL,
1170   `frameworkcode` varchar(4) NOT NULL default '',
1171   PRIMARY KEY  (`frameworkcode`,`tagfield`)
1172 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1173
1174 --
1175 -- Table structure for table `marc_matchers`
1176 --
1177
1178 DROP TABLE IF EXISTS `marc_matchers`;
1179 CREATE TABLE `marc_matchers` (
1180   `matcher_id` int(11) NOT NULL auto_increment,
1181   `code` varchar(10) NOT NULL default '',
1182   `description` varchar(255) NOT NULL default '',
1183   `record_type` varchar(10) NOT NULL default 'biblio',
1184   `threshold` int(11) NOT NULL default 0,
1185   PRIMARY KEY (`matcher_id`),
1186   KEY `code` (`code`),
1187   KEY `record_type` (`record_type`)
1188 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1189
1190 --
1191 -- Table structure for table `matchpoints`
1192 --
1193 DROP TABLE IF EXISTS `matchpoints`;
1194 CREATE TABLE `matchpoints` (
1195   `matcher_id` int(11) NOT NULL,
1196   `matchpoint_id` int(11) NOT NULL auto_increment,
1197   `search_index` varchar(30) NOT NULL default '',
1198   `score` int(11) NOT NULL default 0,
1199   PRIMARY KEY (`matchpoint_id`),
1200   CONSTRAINT `matchpoints_ifbk_1` FOREIGN KEY (`matcher_id`)
1201   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE
1202 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1203
1204
1205 --
1206 -- Table structure for table `matchpoint_components`
1207 --
1208 DROP TABLE IF EXISTS `matchpoint_components`;
1209 CREATE TABLE `matchpoint_components` (
1210   `matchpoint_id` int(11) NOT NULL,
1211   `matchpoint_component_id` int(11) NOT NULL auto_increment,
1212   sequence int(11) NOT NULL default 0,
1213   tag varchar(3) NOT NULL default '',
1214   subfields varchar(40) NOT NULL default '',
1215   offset int(4) NOT NULL default 0,
1216   length int(4) NOT NULL default 0,
1217   PRIMARY KEY (`matchpoint_component_id`),
1218   KEY `by_sequence` (`matchpoint_id`, `sequence`),
1219   CONSTRAINT `matchpoint_components_ifbk_1` FOREIGN KEY (`matchpoint_id`)
1220   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1221 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1222
1223 --
1224 -- Table structure for table `matcher_component_norms`
1225 --
1226 DROP TABLE IF EXISTS `matchpoint_component_norms`;
1227 CREATE TABLE `matchpoint_component_norms` (
1228   `matchpoint_component_id` int(11) NOT NULL,
1229   `sequence`  int(11) NOT NULL default 0,
1230   `norm_routine` varchar(50) NOT NULL default '',
1231   KEY `matchpoint_component_norms` (`matchpoint_component_id`, `sequence`),
1232   CONSTRAINT `matchpoint_component_norms_ifbk_1` FOREIGN KEY (`matchpoint_component_id`)
1233   REFERENCES `matchpoint_components` (`matchpoint_component_id`) ON DELETE CASCADE ON UPDATE CASCADE
1234 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1235
1236 --
1237 -- Table structure for table `matcher_matchpoints`
1238 --
1239 DROP TABLE IF EXISTS `matcher_matchpoints`;
1240 CREATE TABLE `matcher_matchpoints` (
1241   `matcher_id` int(11) NOT NULL,
1242   `matchpoint_id` int(11) NOT NULL,
1243   CONSTRAINT `matcher_matchpoints_ifbk_1` FOREIGN KEY (`matcher_id`)
1244   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1245   CONSTRAINT `matcher_matchpoints_ifbk_2` FOREIGN KEY (`matchpoint_id`)
1246   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1247 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1248
1249 --
1250 -- Table structure for table `matchchecks`
1251 --
1252 DROP TABLE IF EXISTS `matchchecks`;
1253 CREATE TABLE `matchchecks` (
1254   `matcher_id` int(11) NOT NULL,
1255   `matchcheck_id` int(11) NOT NULL auto_increment,
1256   `source_matchpoint_id` int(11) NOT NULL,
1257   `target_matchpoint_id` int(11) NOT NULL,
1258   PRIMARY KEY (`matchcheck_id`),
1259   CONSTRAINT `matcher_matchchecks_ifbk_1` FOREIGN KEY (`matcher_id`)
1260   REFERENCES `marc_matchers` (`matcher_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1261   CONSTRAINT `matcher_matchchecks_ifbk_2` FOREIGN KEY (`source_matchpoint_id`)
1262   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE,
1263   CONSTRAINT `matcher_matchchecks_ifbk_3` FOREIGN KEY (`target_matchpoint_id`)
1264   REFERENCES `matchpoints` (`matchpoint_id`) ON DELETE CASCADE ON UPDATE CASCADE
1265 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1266
1267 --
1268 -- Table structure for table `notifys`
1269 --
1270
1271 DROP TABLE IF EXISTS `notifys`;
1272 CREATE TABLE `notifys` (
1273   `notify_id` int(11) NOT NULL default 0,
1274   `borrowernumber` int(11) NOT NULL default 0,
1275   `itemnumber` int(11) NOT NULL default 0,
1276   `notify_date` date default NULL,
1277   `notify_send_date` date default NULL,
1278   `notify_level` int(1) NOT NULL default 0,
1279   `method` varchar(20) NOT NULL default ''
1280 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1281
1282 --
1283 -- Table structure for table `nozebra`
1284 --
1285
1286 DROP TABLE IF EXISTS `nozebra`;
1287 CREATE TABLE `nozebra` (
1288   `server` varchar(20)     NOT NULL,
1289   `indexname` varchar(40)  NOT NULL,
1290   `value` varchar(250)     NOT NULL,
1291   `biblionumbers` longtext NOT NULL,
1292   KEY `indexname` (`server`,`indexname`),
1293   KEY `value` (`server`,`value`))
1294   ENGINE=InnoDB DEFAULT CHARSET=utf8;
1295
1296 --
1297 -- Table structure for table `old_issues`
1298 --
1299
1300 DROP TABLE IF EXISTS `old_issues`;
1301 CREATE TABLE `old_issues` (
1302   `borrowernumber` int(11) default NULL,
1303   `itemnumber` int(11) default NULL,
1304   `date_due` date default NULL,
1305   `branchcode` varchar(10) default NULL,
1306   `issuingbranch` varchar(18) default NULL,
1307   `returndate` date default NULL,
1308   `lastreneweddate` date default NULL,
1309   `return` varchar(4) default NULL,
1310   `renewals` tinyint(4) default NULL,
1311   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1312   `issuedate` date default NULL,
1313   KEY `old_issuesborridx` (`borrowernumber`),
1314   KEY `old_issuesitemidx` (`itemnumber`),
1315   KEY `old_bordate` (`borrowernumber`,`timestamp`),
1316   CONSTRAINT `old_issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`)
1317     ON DELETE SET NULL ON UPDATE SET NULL,
1318   CONSTRAINT `old_issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`)
1319     ON DELETE SET NULL ON UPDATE SET NULL
1320 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1321
1322 --
1323 -- Table structure for table `old_reserves`
1324 --
1325 DROP TABLE IF EXISTS `old_reserves`;
1326 CREATE TABLE `old_reserves` (
1327   `borrowernumber` int(11) default NULL,
1328   `reservedate` date default NULL,
1329   `biblionumber` int(11) default NULL,
1330   `constrainttype` varchar(1) default NULL,
1331   `branchcode` varchar(10) default NULL,
1332   `notificationdate` date default NULL,
1333   `reminderdate` date default NULL,
1334   `cancellationdate` date default NULL,
1335   `reservenotes` mediumtext,
1336   `priority` smallint(6) default NULL,
1337   `found` varchar(1) default NULL,
1338   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1339   `itemnumber` int(11) default NULL,
1340   `waitingdate` date default NULL,
1341   KEY `old_reserves_borrowernumber` (`borrowernumber`),
1342   KEY `old_reserves_biblionumber` (`biblionumber`),
1343   KEY `old_reserves_itemnumber` (`itemnumber`),
1344   KEY `old_reserves_branchcode` (`branchcode`),
1345   CONSTRAINT `old_reserves_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`)
1346     ON DELETE SET NULL ON UPDATE SET NULL,
1347   CONSTRAINT `old_reserves_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`)
1348     ON DELETE SET NULL ON UPDATE SET NULL,
1349   CONSTRAINT `old_reserves_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`)
1350     ON DELETE SET NULL ON UPDATE SET NULL
1351 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1352
1353 --
1354 -- Table structure for table `opac_news`
1355 --
1356
1357 DROP TABLE IF EXISTS `opac_news`;
1358 CREATE TABLE `opac_news` (
1359   `idnew` int(10) unsigned NOT NULL auto_increment,
1360   `title` varchar(250) NOT NULL default '',
1361   `new` text NOT NULL,
1362   `lang` varchar(25) NOT NULL default '',
1363   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
1364   `expirationdate` date default NULL,
1365   `number` int(11) default NULL,
1366   PRIMARY KEY  (`idnew`)
1367 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1368
1369 --
1370 -- Table structure for table `overduerules`
1371 --
1372
1373 DROP TABLE IF EXISTS `overduerules`;
1374 CREATE TABLE `overduerules` (
1375   `branchcode` varchar(10) NOT NULL default '',
1376   `categorycode` varchar(10) NOT NULL default '',
1377   `delay1` int(4) default 0,
1378   `letter1` varchar(20) default NULL,
1379   `debarred1` varchar(1) default 0,
1380   `delay2` int(4) default 0,
1381   `debarred2` varchar(1) default 0,
1382   `letter2` varchar(20) default NULL,
1383   `delay3` int(4) default 0,
1384   `letter3` varchar(20) default NULL,
1385   `debarred3` int(1) default 0,
1386   PRIMARY KEY  (`branchcode`,`categorycode`)
1387 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1388
1389 --
1390 -- Table structure for table `patroncards`
1391 --
1392
1393 DROP TABLE IF EXISTS `patroncards`;
1394 CREATE TABLE `patroncards` (
1395   `cardid` int(11) NOT NULL auto_increment,
1396   `batch_id` varchar(10) NOT NULL default '1',
1397   `borrowernumber` int(11) NOT NULL,
1398   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1399    PRIMARY KEY  (`cardid`),
1400    KEY `patroncards_ibfk_1` (`borrowernumber`),
1401    CONSTRAINT `patroncards_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE
1402 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1403
1404 --
1405 -- Table structure for table `patronimage`
1406 --
1407
1408 DROP TABLE IF EXISTS `patronimage`;
1409 CREATE TABLE `patronimage` (
1410   `cardnumber` varchar(16) NOT NULL,
1411   `mimetype` varchar(15) NOT NULL,
1412   `imagefile` mediumblob NOT NULL,
1413   PRIMARY KEY  (`cardnumber`),
1414   CONSTRAINT `patronimage_fk1` FOREIGN KEY (`cardnumber`) REFERENCES `borrowers` (`cardnumber`) ON DELETE CASCADE ON UPDATE CASCADE
1415 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1416
1417 --
1418 -- Table structure for table `printers`
1419 --
1420
1421 DROP TABLE IF EXISTS `printers`;
1422 CREATE TABLE `printers` (
1423   `printername` varchar(40) NOT NULL default '',
1424   `printqueue` varchar(20) default NULL,
1425   `printtype` varchar(20) default NULL,
1426   PRIMARY KEY  (`printername`)
1427 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1428
1429 --
1430 -- Table structure for table `printers_profile`
1431 --
1432
1433 DROP TABLE IF EXISTS `printers_profile`;
1434 CREATE TABLE `printers_profile` (
1435   `profile_id` int(4) NOT NULL auto_increment,
1436   `printer_name` varchar(40) NOT NULL default 'Default Printer',
1437   `template_id` int(4) NOT NULL default '0',
1438   `paper_bin` varchar(20) NOT NULL default 'Bypass',
1439   `offset_horz` float NOT NULL default '0',
1440   `offset_vert` float NOT NULL default '0',
1441   `creep_horz` float NOT NULL default '0',
1442   `creep_vert` float NOT NULL default '0',
1443   `units` char(20) NOT NULL default 'POINT',
1444   `creator` char(15) NOT NULL DEFAULT 'Labels',
1445   PRIMARY KEY  (`profile_id`),
1446   UNIQUE KEY `printername` (`printer_name`,`template_id`,`paper_bin`,`creator`)
1447 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1448
1449 --
1450 -- Table structure for table `repeatable_holidays`
1451 --
1452
1453 DROP TABLE IF EXISTS `repeatable_holidays`;
1454 CREATE TABLE `repeatable_holidays` (
1455   `id` int(11) NOT NULL auto_increment,
1456   `branchcode` varchar(10) NOT NULL default '',
1457   `weekday` smallint(6) default NULL,
1458   `day` smallint(6) default NULL,
1459   `month` smallint(6) default NULL,
1460   `title` varchar(50) NOT NULL default '',
1461   `description` text NOT NULL,
1462   PRIMARY KEY  (`id`)
1463 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1464
1465 --
1466 -- Table structure for table `reports_dictionary`
1467 --
1468
1469 DROP TABLE IF EXISTS `reports_dictionary`;
1470 CREATE TABLE reports_dictionary (
1471    `id` int(11) NOT NULL auto_increment,
1472    `name` varchar(255) default NULL,
1473    `description` text,
1474    `date_created` datetime default NULL,
1475    `date_modified` datetime default NULL,
1476    `saved_sql` text,
1477    `area` int(11) default NULL,
1478    PRIMARY KEY  (`id`)
1479 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1480
1481 --
1482 -- Table structure for table `reserveconstraints`
1483 --
1484
1485 DROP TABLE IF EXISTS `reserveconstraints`;
1486 CREATE TABLE `reserveconstraints` (
1487   `borrowernumber` int(11) NOT NULL default 0,
1488   `reservedate` date default NULL,
1489   `biblionumber` int(11) NOT NULL default 0,
1490   `biblioitemnumber` int(11) default NULL,
1491   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
1492 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1493
1494 --
1495 -- Table structure for table `reserves`
1496 --
1497
1498 DROP TABLE IF EXISTS `reserves`;
1499 CREATE TABLE `reserves` (
1500   `borrowernumber` int(11) NOT NULL default 0,
1501   `reservedate` date default NULL,
1502   `biblionumber` int(11) NOT NULL default 0,
1503   `constrainttype` varchar(1) default NULL,
1504   `branchcode` varchar(10) default NULL,
1505   `notificationdate` date default NULL,
1506   `reminderdate` date default NULL,
1507   `cancellationdate` date default NULL,
1508   `reservenotes` mediumtext,
1509   `priority` smallint(6) default NULL,
1510   `found` varchar(1) default NULL,
1511   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1512   `itemnumber` int(11) default NULL,
1513   `waitingdate` date default NULL,
1514   KEY `borrowernumber` (`borrowernumber`),
1515   KEY `biblionumber` (`biblionumber`),
1516   KEY `itemnumber` (`itemnumber`),
1517   KEY `branchcode` (`branchcode`),
1518   CONSTRAINT `reserves_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1519   CONSTRAINT `reserves_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1520   CONSTRAINT `reserves_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1521   CONSTRAINT `reserves_ibfk_4` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE
1522 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1523
1524 --
1525 -- Table structure for table `reviews`
1526 --
1527
1528 DROP TABLE IF EXISTS `reviews`;
1529 CREATE TABLE `reviews` (
1530   `reviewid` int(11) NOT NULL auto_increment,
1531   `borrowernumber` int(11) default NULL,
1532   `biblionumber` int(11) default NULL,
1533   `review` text,
1534   `approved` tinyint(4) default NULL,
1535   `datereviewed` datetime default NULL,
1536   PRIMARY KEY  (`reviewid`)
1537 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1538
1539 --
1540 -- Table structure for table `roadtype`
1541 --
1542
1543 DROP TABLE IF EXISTS `roadtype`;
1544 CREATE TABLE `roadtype` (
1545   `roadtypeid` int(11) NOT NULL auto_increment,
1546   `road_type` varchar(100) NOT NULL default '',
1547   PRIMARY KEY  (`roadtypeid`)
1548 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1549
1550 --
1551 -- Table structure for table `saved_sql`
1552 --
1553
1554 DROP TABLE IF EXISTS `saved_sql`;
1555 CREATE TABLE saved_sql (
1556    `id` int(11) NOT NULL auto_increment,
1557    `borrowernumber` int(11) default NULL,
1558    `date_created` datetime default NULL,
1559    `last_modified` datetime default NULL,
1560    `savedsql` text,
1561    `last_run` datetime default NULL,
1562    `report_name` varchar(255) default NULL,
1563    `type` varchar(255) default NULL,
1564    `notes` text,
1565    PRIMARY KEY  (`id`),
1566    KEY boridx (`borrowernumber`)
1567 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1568
1569
1570 --
1571 -- Table structure for `saved_reports`
1572 --
1573
1574 DROP TABLE IF EXISTS `saved_reports`;
1575 CREATE TABLE saved_reports (
1576    `id` int(11) NOT NULL auto_increment,
1577    `report_id` int(11) default NULL,
1578    `report` longtext,
1579    `date_run` datetime default NULL,
1580    PRIMARY KEY  (`id`)
1581 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1582
1583
1584 --
1585 -- Table structure for table `search_history`
1586 --
1587
1588 DROP TABLE IF EXISTS `search_history`;
1589 CREATE TABLE IF NOT EXISTS `search_history` (
1590   `userid` int(11) NOT NULL,
1591   `sessionid` varchar(32) NOT NULL,
1592   `query_desc` varchar(255) NOT NULL,
1593   `query_cgi` varchar(255) NOT NULL,
1594   `total` int(11) NOT NULL,
1595   `time` timestamp NOT NULL default CURRENT_TIMESTAMP,
1596   KEY `userid` (`userid`),
1597   KEY `sessionid` (`sessionid`)
1598 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Opac search history results';
1599
1600
1601 --
1602 -- Table structure for table `serial`
1603 --
1604
1605 DROP TABLE IF EXISTS `serial`;
1606 CREATE TABLE `serial` (
1607   `serialid` int(11) NOT NULL auto_increment,
1608   `biblionumber` varchar(100) NOT NULL default '',
1609   `subscriptionid` varchar(100) NOT NULL default '',
1610   `serialseq` varchar(100) NOT NULL default '',
1611   `status` tinyint(4) NOT NULL default 0,
1612   `planneddate` date default NULL,
1613   `notes` text,
1614   `publisheddate` date default NULL,
1615   `itemnumber` text default NULL,
1616   `claimdate` date default NULL,
1617   `routingnotes` text,
1618   PRIMARY KEY  (`serialid`)
1619 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1620
1621 --
1622 -- Table structure for table `sessions`
1623 --
1624
1625 DROP TABLE IF EXISTS sessions;
1626 CREATE TABLE sessions (
1627   `id` varchar(32) NOT NULL,
1628   `a_session` text NOT NULL,
1629   UNIQUE KEY id (id)
1630 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1631
1632 --
1633 -- Table structure for table `special_holidays`
1634 --
1635
1636 DROP TABLE IF EXISTS `special_holidays`;
1637 CREATE TABLE `special_holidays` (
1638   `id` int(11) NOT NULL auto_increment,
1639   `branchcode` varchar(10) NOT NULL default '',
1640   `day` smallint(6) NOT NULL default 0,
1641   `month` smallint(6) NOT NULL default 0,
1642   `year` smallint(6) NOT NULL default 0,
1643   `isexception` smallint(1) NOT NULL default 1,
1644   `title` varchar(50) NOT NULL default '',
1645   `description` text NOT NULL,
1646   PRIMARY KEY  (`id`)
1647 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1648
1649 --
1650 -- Table structure for table `statistics`
1651 --
1652
1653 DROP TABLE IF EXISTS `statistics`;
1654 CREATE TABLE `statistics` (
1655   `datetime` datetime default NULL,
1656   `branch` varchar(10) default NULL,
1657   `proccode` varchar(4) default NULL,
1658   `value` double(16,4) default NULL,
1659   `type` varchar(16) default NULL,
1660   `other` mediumtext,
1661   `usercode` varchar(10) default NULL,
1662   `itemnumber` int(11) default NULL,
1663   `itemtype` varchar(10) default NULL,
1664   `borrowernumber` int(11) default NULL,
1665   `associatedborrower` int(11) default NULL,
1666   KEY `timeidx` (`datetime`)
1667 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1668
1669 --
1670 -- Table structure for table `stopwords`
1671 --
1672
1673 DROP TABLE IF EXISTS `stopwords`;
1674   CREATE TABLE `stopwords` (
1675   `word` varchar(255) default NULL
1676 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1677
1678 --
1679 -- Table structure for table `subscription`
1680 --
1681
1682 DROP TABLE IF EXISTS `subscription`;
1683 CREATE TABLE `subscription` (
1684   `biblionumber` int(11) NOT NULL default 0,
1685   `subscriptionid` int(11) NOT NULL auto_increment,
1686   `librarian` varchar(100) default '',
1687   `startdate` date default NULL,
1688   `aqbooksellerid` int(11) default 0,
1689   `cost` int(11) default 0,
1690   `aqbudgetid` int(11) default 0,
1691   `weeklength` int(11) default 0,
1692   `monthlength` int(11) default 0,
1693   `numberlength` int(11) default 0,
1694   `periodicity` tinyint(4) default 0,
1695   `dow` varchar(100) default '',
1696   `numberingmethod` varchar(100) default '',
1697   `notes` mediumtext,
1698   `status` varchar(100) NOT NULL default '',
1699   `add1` int(11) default 0,
1700   `every1` int(11) default 0,
1701   `whenmorethan1` int(11) default 0,
1702   `setto1` int(11) default NULL,
1703   `lastvalue1` int(11) default NULL,
1704   `add2` int(11) default 0,
1705   `every2` int(11) default 0,
1706   `whenmorethan2` int(11) default 0,
1707   `setto2` int(11) default NULL,
1708   `lastvalue2` int(11) default NULL,
1709   `add3` int(11) default 0,
1710   `every3` int(11) default 0,
1711   `innerloop1` int(11) default 0,
1712   `innerloop2` int(11) default 0,
1713   `innerloop3` int(11) default 0,
1714   `whenmorethan3` int(11) default 0,
1715   `setto3` int(11) default NULL,
1716   `lastvalue3` int(11) default NULL,
1717   `issuesatonce` tinyint(3) NOT NULL default 1,
1718   `firstacquidate` date default NULL,
1719   `manualhistory` tinyint(1) NOT NULL default 0,
1720   `irregularity` text,
1721   `letter` varchar(20) default NULL,
1722   `numberpattern` tinyint(3) default 0,
1723   `distributedto` text,
1724   `internalnotes` longtext,
1725   `callnumber` text,
1726   `location` varchar(80) NULL default '',
1727   `branchcode` varchar(10) NOT NULL default '',
1728   `hemisphere` tinyint(3) default 0,
1729   `lastbranch` varchar(10),
1730   `serialsadditems` tinyint(1) NOT NULL default '0',
1731   `staffdisplaycount` VARCHAR(10) NULL,
1732   `opacdisplaycount` VARCHAR(10) NULL,
1733   `graceperiod` int(11) NOT NULL default '0',
1734   `enddate` date default NULL,
1735   PRIMARY KEY  (`subscriptionid`)
1736 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1737
1738 --
1739 -- Table structure for table `subscriptionhistory`
1740 --
1741
1742 DROP TABLE IF EXISTS `subscriptionhistory`;
1743 CREATE TABLE `subscriptionhistory` (
1744   `biblionumber` int(11) NOT NULL default 0,
1745   `subscriptionid` int(11) NOT NULL default 0,
1746   `histstartdate` date default NULL,
1747   `histenddate` date default NULL,
1748   `missinglist` longtext NOT NULL,
1749   `recievedlist` longtext NOT NULL,
1750   `opacnote` varchar(150) NOT NULL default '',
1751   `librariannote` varchar(150) NOT NULL default '',
1752   PRIMARY KEY  (`subscriptionid`),
1753   KEY `biblionumber` (`biblionumber`)
1754 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1755
1756 --
1757 -- Table structure for table `subscriptionroutinglist`
1758 --
1759
1760 DROP TABLE IF EXISTS `subscriptionroutinglist`;
1761 CREATE TABLE `subscriptionroutinglist` (
1762   `routingid` int(11) NOT NULL auto_increment,
1763   `borrowernumber` int(11) default NULL,
1764   `ranking` int(11) default NULL,
1765   `subscriptionid` int(11) default NULL,
1766   PRIMARY KEY  (`routingid`)
1767 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1768
1769 --
1770 -- Table structure for table `suggestions`
1771 --
1772
1773 DROP TABLE IF EXISTS `suggestions`;
1774 CREATE TABLE `suggestions` (
1775   `suggestionid` int(8) NOT NULL auto_increment,
1776   `suggestedby` int(11) NOT NULL default 0,
1777   `suggesteddate` date NOT NULL default 0,
1778   `managedby` int(11) default NULL,
1779   `manageddate` date default NULL,
1780    acceptedby INT(11) default NULL,
1781    accepteddate date default NULL,
1782    rejectedby INT(11) default NULL,
1783    rejecteddate date default NULL,
1784   `STATUS` varchar(10) NOT NULL default '',
1785   `note` mediumtext,
1786   `author` varchar(80) default NULL,
1787   `title` varchar(80) default NULL,
1788   `copyrightdate` smallint(6) default NULL,
1789   `publishercode` varchar(255) default NULL,
1790   `date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1791   `volumedesc` varchar(255) default NULL,
1792   `publicationyear` smallint(6) default 0,
1793   `place` varchar(255) default NULL,
1794   `isbn` varchar(30) default NULL,
1795   `mailoverseeing` smallint(1) default 0,
1796   `biblionumber` int(11) default NULL,
1797   `reason` text,
1798    budgetid INT(11),
1799    branchcode VARCHAR(10) default NULL,
1800    collectiontitle text default NULL,
1801    itemtype VARCHAR(30) default NULL,
1802   PRIMARY KEY  (`suggestionid`),
1803   KEY `suggestedby` (`suggestedby`),
1804   KEY `managedby` (`managedby`)
1805 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1806
1807 --
1808 -- Table structure for table `systempreferences`
1809 --
1810
1811 DROP TABLE IF EXISTS `systempreferences`;
1812 CREATE TABLE `systempreferences` (
1813   `variable` varchar(50) NOT NULL default '',
1814   `value` text,
1815   `options` mediumtext,
1816   `explanation` text,
1817   `type` varchar(20) default NULL,
1818   PRIMARY KEY  (`variable`)
1819 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1820
1821 --
1822 -- Table structure for table `tags`
1823 --
1824
1825 DROP TABLE IF EXISTS `tags`;
1826 CREATE TABLE `tags` (
1827   `entry` varchar(255) NOT NULL default '',
1828   `weight` bigint(20) NOT NULL default 0,
1829   PRIMARY KEY  (`entry`)
1830 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1831
1832 --
1833 -- Table structure for table `tags_all`
1834 --
1835
1836 DROP TABLE IF EXISTS `tags_all`;
1837 CREATE TABLE `tags_all` (
1838   `tag_id`         int(11) NOT NULL auto_increment,
1839   `borrowernumber` int(11) NOT NULL,
1840   `biblionumber`   int(11) NOT NULL,
1841   `term`      varchar(255) NOT NULL,
1842   `language`       int(4) default NULL,
1843   `date_created` datetime  NOT NULL,
1844   PRIMARY KEY  (`tag_id`),
1845   KEY `tags_borrowers_fk_1` (`borrowernumber`),
1846   KEY `tags_biblionumber_fk_1` (`biblionumber`),
1847   CONSTRAINT `tags_borrowers_fk_1` FOREIGN KEY (`borrowernumber`)
1848         REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1849   CONSTRAINT `tags_biblionumber_fk_1` FOREIGN KEY (`biblionumber`)
1850         REFERENCES `biblio`     (`biblionumber`)  ON DELETE CASCADE ON UPDATE CASCADE
1851 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1852
1853 --
1854 -- Table structure for table `tags_approval`
1855 --
1856
1857 DROP TABLE IF EXISTS `tags_approval`;
1858 CREATE TABLE `tags_approval` (
1859   `term`   varchar(255) NOT NULL,
1860   `approved`     int(1) NOT NULL default '0',
1861   `date_approved` datetime       default NULL,
1862   `approved_by` int(11)          default NULL,
1863   `weight_total` int(9) NOT NULL default '1',
1864   PRIMARY KEY  (`term`),
1865   KEY `tags_approval_borrowers_fk_1` (`approved_by`),
1866   CONSTRAINT `tags_approval_borrowers_fk_1` FOREIGN KEY (`approved_by`)
1867         REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE
1868 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1869
1870 --
1871 -- Table structure for table `tags_index`
1872 --
1873
1874 DROP TABLE IF EXISTS `tags_index`;
1875 CREATE TABLE `tags_index` (
1876   `term`    varchar(255) NOT NULL,
1877   `biblionumber` int(11) NOT NULL,
1878   `weight`        int(9) NOT NULL default '1',
1879   PRIMARY KEY  (`term`,`biblionumber`),
1880   KEY `tags_index_biblionumber_fk_1` (`biblionumber`),
1881   CONSTRAINT `tags_index_term_fk_1` FOREIGN KEY (`term`)
1882         REFERENCES `tags_approval` (`term`)  ON DELETE CASCADE ON UPDATE CASCADE,
1883   CONSTRAINT `tags_index_biblionumber_fk_1` FOREIGN KEY (`biblionumber`)
1884         REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
1885 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1886
1887 --
1888 -- Table structure for table `userflags`
1889 --
1890
1891 DROP TABLE IF EXISTS `userflags`;
1892 CREATE TABLE `userflags` (
1893   `bit` int(11) NOT NULL default 0,
1894   `flag` varchar(30) default NULL,
1895   `flagdesc` varchar(255) default NULL,
1896   `defaulton` int(11) default NULL,
1897   PRIMARY KEY  (`bit`)
1898 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1899
1900 --
1901 -- Table structure for table `virtualshelves`
1902 --
1903
1904 DROP TABLE IF EXISTS `virtualshelves`;
1905 CREATE TABLE `virtualshelves` (
1906   `shelfnumber` int(11) NOT NULL auto_increment,
1907   `shelfname` varchar(255) default NULL,
1908   `owner` varchar(80) default NULL,
1909   `category` varchar(1) default NULL,
1910   `sortfield` varchar(16) default NULL,
1911   `lastmodified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
1912   PRIMARY KEY  (`shelfnumber`)
1913 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1914
1915 --
1916 -- Table structure for table `virtualshelfcontents`
1917 --
1918
1919 DROP TABLE IF EXISTS `virtualshelfcontents`;
1920 CREATE TABLE `virtualshelfcontents` (
1921   `shelfnumber` int(11) NOT NULL default 0,
1922   `biblionumber` int(11) NOT NULL default 0,
1923   `flags` int(11) default NULL,
1924   `dateadded` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
1925   KEY `shelfnumber` (`shelfnumber`),
1926   KEY `biblionumber` (`biblionumber`),
1927   CONSTRAINT `virtualshelfcontents_ibfk_1` FOREIGN KEY (`shelfnumber`) REFERENCES `virtualshelves` (`shelfnumber`) ON DELETE CASCADE ON UPDATE CASCADE,
1928   CONSTRAINT `shelfcontents_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE
1929 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1930
1931 --
1932 -- Table structure for table `z3950servers`
1933 --
1934
1935 DROP TABLE IF EXISTS `z3950servers`;
1936 CREATE TABLE `z3950servers` (
1937   `host` varchar(255) default NULL,
1938   `port` int(11) default NULL,
1939   `db` varchar(255) default NULL,
1940   `userid` varchar(255) default NULL,
1941   `password` varchar(255) default NULL,
1942   `name` mediumtext,
1943   `id` int(11) NOT NULL auto_increment,
1944   `checked` smallint(6) default NULL,
1945   `rank` int(11) default NULL,
1946   `syntax` varchar(80) default NULL,
1947   `icon` text,
1948   `position` enum('primary','secondary','') NOT NULL default 'primary',
1949   `type` enum('zed','opensearch') NOT NULL default 'zed',
1950   `encoding` text default NULL,
1951   `description` text NOT NULL,
1952   PRIMARY KEY  (`id`)
1953 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1954
1955 --
1956 -- Table structure for table `zebraqueue`
1957 --
1958
1959 DROP TABLE IF EXISTS `zebraqueue`;
1960 CREATE TABLE `zebraqueue` (
1961   `id` int(11) NOT NULL auto_increment,
1962   `biblio_auth_number` bigint(20) unsigned NOT NULL default '0',
1963   `operation` char(20) NOT NULL default '',
1964   `server` char(20) NOT NULL default '',
1965   `done` int(11) NOT NULL default '0',
1966   `time` timestamp NOT NULL default CURRENT_TIMESTAMP,
1967   PRIMARY KEY  (`id`),
1968   KEY `zebraqueue_lookup` (`server`, `biblio_auth_number`, `operation`, `done`)
1969 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1970
1971 DROP TABLE IF EXISTS `services_throttle`;
1972 CREATE TABLE `services_throttle` (
1973   `service_type` varchar(10) NOT NULL default '',
1974   `service_count` varchar(45) default NULL,
1975   PRIMARY KEY  (`service_type`)
1976 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1977
1978 -- http://www.w3.org/International/articles/language-tags/
1979
1980 -- RFC4646
1981 DROP TABLE IF EXISTS language_subtag_registry;
1982 CREATE TABLE language_subtag_registry (
1983         subtag varchar(25),
1984         type varchar(25), -- language-script-region-variant-extension-privateuse
1985         description varchar(25), -- only one of the possible descriptions for ease of reference, see language_descriptions for the complete list
1986         added date,
1987         id int(11) NOT NULL auto_increment,
1988         PRIMARY KEY  (`id`),
1989         KEY `subtag` (`subtag`)
1990 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
1991
1992 -- TODO: add suppress_scripts
1993 -- this maps three letter codes defined in iso639.2 back to their
1994 -- two letter equivilents in rfc4646 (LOC maintains iso639+)
1995 DROP TABLE IF EXISTS language_rfc4646_to_iso639;
1996 CREATE TABLE language_rfc4646_to_iso639 (
1997         rfc4646_subtag varchar(25),
1998         iso639_2_code varchar(25),
1999         id int(11) NOT NULL auto_increment,
2000         PRIMARY KEY  (`id`),
2001         KEY `rfc4646_subtag` (`rfc4646_subtag`)
2002 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2003
2004 DROP TABLE IF EXISTS language_descriptions;
2005 CREATE TABLE language_descriptions (
2006         subtag varchar(25),
2007         type varchar(25),
2008         lang varchar(25),
2009         description varchar(255),
2010         id int(11) NOT NULL auto_increment,
2011         PRIMARY KEY  (`id`),
2012         KEY `lang` (`lang`)
2013 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2014
2015 -- bi-directional support, keyed by script subcode
2016 DROP TABLE IF EXISTS language_script_bidi;
2017 CREATE TABLE language_script_bidi (
2018         rfc4646_subtag varchar(25), -- script subtag, Arab, Hebr, etc.
2019         bidi varchar(3), -- rtl ltr
2020         KEY `rfc4646_subtag` (`rfc4646_subtag`)
2021 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2022
2023 -- TODO: need to map language subtags to script subtags for detection
2024 -- of bidi when script is not specified (like ar, he)
2025 DROP TABLE IF EXISTS language_script_mapping;
2026 CREATE TABLE language_script_mapping (
2027         language_subtag varchar(25),
2028         script_subtag varchar(25),
2029         KEY `language_subtag` (`language_subtag`)
2030 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2031
2032 DROP TABLE IF EXISTS `permissions`;
2033 CREATE TABLE `permissions` (
2034   `module_bit` int(11) NOT NULL DEFAULT 0,
2035   `code` varchar(64) DEFAULT NULL,
2036   `description` varchar(255) DEFAULT NULL,
2037   PRIMARY KEY  (`module_bit`, `code`),
2038   CONSTRAINT `permissions_ibfk_1` FOREIGN KEY (`module_bit`) REFERENCES `userflags` (`bit`)
2039     ON DELETE CASCADE ON UPDATE CASCADE
2040 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2041
2042 DROP TABLE IF EXISTS `serialitems`;
2043 CREATE TABLE `serialitems` (
2044         `itemnumber` int(11) NOT NULL,
2045         `serialid` int(11) NOT NULL,
2046         UNIQUE KEY `serialitemsidx` (`itemnumber`),
2047         KEY `serialitems_sfk_1` (`serialid`),
2048         CONSTRAINT `serialitems_sfk_1` FOREIGN KEY (`serialid`) REFERENCES `serial` (`serialid`) ON DELETE CASCADE ON UPDATE CASCADE
2049 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2050
2051 DROP TABLE IF EXISTS `user_permissions`;
2052 CREATE TABLE `user_permissions` (
2053   `borrowernumber` int(11) NOT NULL DEFAULT 0,
2054   `module_bit` int(11) NOT NULL DEFAULT 0,
2055   `code` varchar(64) DEFAULT NULL,
2056   CONSTRAINT `user_permissions_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`)
2057     ON DELETE CASCADE ON UPDATE CASCADE,
2058   CONSTRAINT `user_permissions_ibfk_2` FOREIGN KEY (`module_bit`, `code`) REFERENCES `permissions` (`module_bit`, `code`)
2059     ON DELETE CASCADE ON UPDATE CASCADE
2060 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2061
2062 --
2063 -- Table structure for table `tmp_holdsqueue`
2064 --
2065
2066 DROP TABLE IF EXISTS `tmp_holdsqueue`;
2067 CREATE TABLE `tmp_holdsqueue` (
2068   `biblionumber` int(11) default NULL,
2069   `itemnumber` int(11) default NULL,
2070   `barcode` varchar(20) default NULL,
2071   `surname` mediumtext NOT NULL,
2072   `firstname` text,
2073   `phone` text,
2074   `borrowernumber` int(11) NOT NULL,
2075   `cardnumber` varchar(16) default NULL,
2076   `reservedate` date default NULL,
2077   `title` mediumtext,
2078   `itemcallnumber` varchar(255) default NULL,
2079   `holdingbranch` varchar(10) default NULL,
2080   `pickbranch` varchar(10) default NULL,
2081   `notes` text,
2082   `item_level_request` tinyint(4) NOT NULL default 0
2083 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2084
2085 --
2086 -- Table structure for table `message_queue`
2087 --
2088
2089 DROP TABLE IF EXISTS `message_queue`;
2090 CREATE TABLE `message_queue` (
2091   `message_id` int(11) NOT NULL auto_increment,
2092   `borrowernumber` int(11) default NULL,
2093   `subject` text,
2094   `content` text,
2095   `metadata` text DEFAULT NULL,
2096   `letter_code` varchar(64) DEFAULT NULL,
2097   `message_transport_type` varchar(20) NOT NULL,
2098   `status` enum('sent','pending','failed','deleted') NOT NULL default 'pending',
2099   `time_queued` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2100   `to_address` mediumtext,
2101   `from_address` mediumtext,
2102   `content_type` text,
2103   KEY `message_id` (`message_id`),
2104   KEY `borrowernumber` (`borrowernumber`),
2105   KEY `message_transport_type` (`message_transport_type`),
2106   CONSTRAINT `messageq_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
2107   CONSTRAINT `messageq_ibfk_2` FOREIGN KEY (`message_transport_type`) REFERENCES `message_transport_types` (`message_transport_type`) ON DELETE RESTRICT ON UPDATE CASCADE
2108 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2109
2110 --
2111 -- Table structure for table `message_transport_types`
2112 --
2113
2114 DROP TABLE IF EXISTS `message_transport_types`;
2115 CREATE TABLE `message_transport_types` (
2116   `message_transport_type` varchar(20) NOT NULL,
2117   PRIMARY KEY  (`message_transport_type`)
2118 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2119
2120 --
2121 -- Table structure for table `message_attributes`
2122 --
2123
2124 DROP TABLE IF EXISTS `message_attributes`;
2125 CREATE TABLE `message_attributes` (
2126   `message_attribute_id` int(11) NOT NULL auto_increment,
2127   `message_name` varchar(20) NOT NULL default '',
2128   `takes_days` tinyint(1) NOT NULL default '0',
2129   PRIMARY KEY  (`message_attribute_id`),
2130   UNIQUE KEY `message_name` (`message_name`)
2131 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2132
2133 --
2134 -- Table structure for table `message_transports`
2135 --
2136
2137 DROP TABLE IF EXISTS `message_transports`;
2138 CREATE TABLE `message_transports` (
2139   `message_attribute_id` int(11) NOT NULL,
2140   `message_transport_type` varchar(20) NOT NULL,
2141   `is_digest` tinyint(1) NOT NULL default '0',
2142   `letter_module` varchar(20) NOT NULL default '',
2143   `letter_code` varchar(20) NOT NULL default '',
2144   PRIMARY KEY  (`message_attribute_id`,`message_transport_type`,`is_digest`),
2145   KEY `message_transport_type` (`message_transport_type`),
2146   KEY `letter_module` (`letter_module`,`letter_code`),
2147   CONSTRAINT `message_transports_ibfk_1` FOREIGN KEY (`message_attribute_id`) REFERENCES `message_attributes` (`message_attribute_id`) ON DELETE CASCADE ON UPDATE CASCADE,
2148   CONSTRAINT `message_transports_ibfk_2` FOREIGN KEY (`message_transport_type`) REFERENCES `message_transport_types` (`message_transport_type`) ON DELETE CASCADE ON UPDATE CASCADE,
2149   CONSTRAINT `message_transports_ibfk_3` FOREIGN KEY (`letter_module`, `letter_code`) REFERENCES `letter` (`module`, `code`) ON DELETE CASCADE ON UPDATE CASCADE
2150 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2151
2152 --
2153 -- Table structure for table `borrower_message_preferences`
2154 --
2155
2156 DROP TABLE IF EXISTS `borrower_message_preferences`;
2157 CREATE TABLE `borrower_message_preferences` (
2158   `borrower_message_preference_id` int(11) NOT NULL auto_increment,
2159   `borrowernumber` int(11) default NULL,
2160   `categorycode` varchar(10) default NULL,
2161   `message_attribute_id` int(11) default '0',
2162   `days_in_advance` int(11) default '0',
2163   `wants_digest` tinyint(1) NOT NULL default '0',
2164   PRIMARY KEY  (`borrower_message_preference_id`),
2165   KEY `borrowernumber` (`borrowernumber`),
2166   KEY `categorycode` (`categorycode`),
2167   KEY `message_attribute_id` (`message_attribute_id`),
2168   CONSTRAINT `borrower_message_preferences_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
2169   CONSTRAINT `borrower_message_preferences_ibfk_2` FOREIGN KEY (`message_attribute_id`) REFERENCES `message_attributes` (`message_attribute_id`) ON DELETE CASCADE ON UPDATE CASCADE,
2170   CONSTRAINT `borrower_message_preferences_ibfk_3` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE
2171 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2172
2173 --
2174 -- Table structure for table `borrower_message_transport_preferences`
2175 --
2176
2177 DROP TABLE IF EXISTS `borrower_message_transport_preferences`;
2178 CREATE TABLE `borrower_message_transport_preferences` (
2179   `borrower_message_preference_id` int(11) NOT NULL default '0',
2180   `message_transport_type` varchar(20) NOT NULL default '0',
2181   PRIMARY KEY  (`borrower_message_preference_id`,`message_transport_type`),
2182   KEY `message_transport_type` (`message_transport_type`),
2183   CONSTRAINT `borrower_message_transport_preferences_ibfk_1` FOREIGN KEY (`borrower_message_preference_id`) REFERENCES `borrower_message_preferences` (`borrower_message_preference_id`) ON DELETE CASCADE ON UPDATE CASCADE,
2184   CONSTRAINT `borrower_message_transport_preferences_ibfk_2` FOREIGN KEY (`message_transport_type`) REFERENCES `message_transport_types` (`message_transport_type`) ON DELETE CASCADE ON UPDATE CASCADE
2185 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2186
2187 --
2188 -- Table structure for the table branch_transfer_limits
2189 --
2190
2191 DROP TABLE IF EXISTS `branch_transfer_limits`;
2192 CREATE TABLE branch_transfer_limits (
2193     limitId int(8) NOT NULL auto_increment,
2194     toBranch varchar(10) NOT NULL,
2195     fromBranch varchar(10) NOT NULL,
2196     itemtype varchar(10) NULL,
2197     ccode varchar(10) NULL,
2198     PRIMARY KEY  (limitId)
2199 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2200
2201 --
2202 -- Table structure for table `item_circulation_alert_preferences`
2203 --
2204
2205 DROP TABLE IF EXISTS `item_circulation_alert_preferences`;
2206 CREATE TABLE `item_circulation_alert_preferences` (
2207   `id` int(11) NOT NULL auto_increment,
2208   `branchcode` varchar(10) NOT NULL,
2209   `categorycode` varchar(10) NOT NULL,
2210   `item_type` varchar(10) NOT NULL,
2211   `notification` varchar(16) NOT NULL,
2212   PRIMARY KEY  (`id`),
2213   KEY `branchcode` (`branchcode`,`categorycode`,`item_type`, `notification`)
2214 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2215
2216 --
2217 -- Table structure for table `messages`
2218 --
2219
2220 CREATE TABLE `messages` (
2221   `message_id` int(11) NOT NULL auto_increment,
2222   `borrowernumber` int(11) NOT NULL,
2223   `branchcode` varchar(4) default NULL,
2224   `message_type` varchar(1) NOT NULL,
2225   `message` text NOT NULL,
2226   `message_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
2227   PRIMARY KEY (`message_id`)
2228 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2229
2230 --
2231 -- Table structure for table `accountlines`
2232 --
2233
2234 DROP TABLE IF EXISTS `accountlines`;
2235 CREATE TABLE `accountlines` (
2236   `borrowernumber` int(11) NOT NULL default 0,
2237   `accountno` smallint(6) NOT NULL default 0,
2238   `itemnumber` int(11) default NULL,
2239   `date` date default NULL,
2240   `amount` decimal(28,6) default NULL,
2241   `description` mediumtext,
2242   `dispute` mediumtext,
2243   `accounttype` varchar(5) default NULL,
2244   `amountoutstanding` decimal(28,6) default NULL,
2245   `lastincrement` decimal(28,6) default NULL,
2246   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2247   `notify_id` int(11) NOT NULL default 0,
2248   `notify_level` int(2) NOT NULL default 0,
2249   KEY `acctsborridx` (`borrowernumber`),
2250   KEY `timeidx` (`timestamp`),
2251   KEY `itemnumber` (`itemnumber`),
2252   CONSTRAINT `accountlines_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE,
2253   CONSTRAINT `accountlines_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL
2254 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2255
2256 --
2257 -- Table structure for table `accountoffsets`
2258 --
2259
2260 DROP TABLE IF EXISTS `accountoffsets`;
2261 CREATE TABLE `accountoffsets` (
2262   `borrowernumber` int(11) NOT NULL default 0,
2263   `accountno` smallint(6) NOT NULL default 0,
2264   `offsetaccount` smallint(6) NOT NULL default 0,
2265   `offsetamount` decimal(28,6) default NULL,
2266   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2267   CONSTRAINT `accountoffsets_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE
2268 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2269
2270 --
2271 -- Table structure for table `action_logs`
2272 --
2273
2274 DROP TABLE IF EXISTS `action_logs`;
2275 CREATE TABLE `action_logs` (
2276   `action_id` int(11) NOT NULL auto_increment,
2277   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2278   `user` int(11) NOT NULL default 0,
2279   `module` text,
2280   `action` text,
2281   `object` int(11) default NULL,
2282   `info` text,
2283   PRIMARY KEY (`action_id`),
2284   KEY  (`timestamp`,`user`)
2285 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2286
2287 --
2288 -- Table structure for table `alert`
2289 --
2290
2291 DROP TABLE IF EXISTS `alert`;
2292 CREATE TABLE `alert` (
2293   `alertid` int(11) NOT NULL auto_increment,
2294   `borrowernumber` int(11) NOT NULL default 0,
2295   `type` varchar(10) NOT NULL default '',
2296   `externalid` varchar(20) NOT NULL default '',
2297   PRIMARY KEY  (`alertid`),
2298   KEY `borrowernumber` (`borrowernumber`),
2299   KEY `type` (`type`,`externalid`)
2300 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2301
2302 --
2303 -- Table structure for table `aqbasketgroups`
2304 --
2305
2306 DROP TABLE IF EXISTS `aqbasketgroups`;
2307 CREATE TABLE `aqbasketgroups` (
2308   `id` int(11) NOT NULL auto_increment,
2309   `name` varchar(50) default NULL,
2310   `closed` tinyint(1) default NULL,
2311   `booksellerid` int(11) NOT NULL,
2312   PRIMARY KEY  (`id`),
2313   KEY `booksellerid` (`booksellerid`),
2314   CONSTRAINT `aqbasketgroups_ibfk_1` FOREIGN KEY (`booksellerid`) REFERENCES `aqbooksellers` (`id`) ON UPDATE CASCADE ON DELETE CASCADE
2315 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2316
2317 --
2318 -- Table structure for table `aqbasket`
2319 --
2320
2321 DROP TABLE IF EXISTS `aqbasket`;
2322 CREATE TABLE `aqbasket` (
2323   `basketno` int(11) NOT NULL auto_increment,
2324   `basketname` varchar(50) default NULL,
2325   `note` mediumtext,
2326   `booksellernote` mediumtext,
2327   `contractnumber` int(11),
2328   `creationdate` date default NULL,
2329   `closedate` date default NULL,
2330   `booksellerid` int(11) NOT NULL default 1,
2331   `authorisedby` varchar(10) default NULL,
2332   `booksellerinvoicenumber` mediumtext,
2333   `basketgroupid` int(11),
2334   PRIMARY KEY  (`basketno`),
2335   KEY `booksellerid` (`booksellerid`),
2336   KEY `basketgroupid` (`basketgroupid`),
2337   KEY `contractnumber` (`contractnumber`),
2338   CONSTRAINT `aqbasket_ibfk_1` FOREIGN KEY (`booksellerid`) REFERENCES `aqbooksellers` (`id`) ON UPDATE CASCADE,
2339   CONSTRAINT `aqbasket_ibfk_2` FOREIGN KEY (`contractnumber`) REFERENCES `aqcontract` (`contractnumber`),
2340   CONSTRAINT `aqbasket_ibfk_3` FOREIGN KEY (`basketgroupid`) REFERENCES `aqbasketgroups` (`id`) ON UPDATE CASCADE
2341 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2342
2343 --
2344 -- Table structure for table `aqbooksellers`
2345 --
2346
2347 DROP TABLE IF EXISTS `aqbooksellers`;
2348 CREATE TABLE `aqbooksellers` (
2349   `id` int(11) NOT NULL auto_increment,
2350   `name` mediumtext NOT NULL,
2351   `address1` mediumtext,
2352   `address2` mediumtext,
2353   `address3` mediumtext,
2354   `address4` mediumtext,
2355   `phone` varchar(30) default NULL,
2356   `accountnumber` mediumtext,
2357   `othersupplier` mediumtext,
2358   `currency` varchar(3) NOT NULL default '',
2359   `booksellerfax` mediumtext,
2360   `notes` mediumtext,
2361   `bookselleremail` mediumtext,
2362   `booksellerurl` mediumtext,
2363   `contact` varchar(100) default NULL,
2364   `postal` mediumtext,
2365   `url` varchar(255) default NULL,
2366   `contpos` varchar(100) default NULL,
2367   `contphone` varchar(100) default NULL,
2368   `contfax` varchar(100) default NULL,
2369   `contaltphone` varchar(100) default NULL,
2370   `contemail` varchar(100) default NULL,
2371   `contnotes` mediumtext,
2372   `active` tinyint(4) default NULL,
2373   `listprice` varchar(10) default NULL,
2374   `invoiceprice` varchar(10) default NULL,
2375   `gstreg` tinyint(4) default NULL,
2376   `listincgst` tinyint(4) default NULL,
2377   `invoiceincgst` tinyint(4) default NULL,
2378   `gstrate` decimal(6,4) default NULL,
2379   `discount` float(6,4) default NULL,
2380   `fax` varchar(50) default NULL,
2381   PRIMARY KEY  (`id`),
2382   KEY `listprice` (`listprice`),
2383   KEY `invoiceprice` (`invoiceprice`),
2384   CONSTRAINT `aqbooksellers_ibfk_1` FOREIGN KEY (`listprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE,
2385   CONSTRAINT `aqbooksellers_ibfk_2` FOREIGN KEY (`invoiceprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE
2386 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2387
2388 --
2389 -- Table structure for table `aqbudgets`
2390 --
2391
2392 DROP TABLE IF EXISTS `aqbudgets`;
2393 CREATE TABLE `aqbudgets` (
2394   `budget_id` int(11) NOT NULL auto_increment,
2395   `budget_parent_id` int(11) default NULL,
2396   `budget_code` varchar(30) default NULL,
2397   `budget_name` varchar(80) default NULL,
2398   `budget_branchcode` varchar(10) default NULL,
2399   `budget_amount` decimal(28,6) NULL default '0.00',
2400   `budget_encumb` decimal(28,6) NULL default '0.00',
2401   `budget_expend` decimal(28,6) NULL default '0.00',
2402   `budget_notes` mediumtext,
2403   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2404   `budget_period_id` int(11) default NULL,
2405   `sort1_authcat` varchar(80) default NULL,
2406   `sort2_authcat` varchar(80) default NULL,
2407   `budget_owner_id` int(11) default NULL,
2408   `budget_permission` int(1) default '0',
2409   PRIMARY KEY  (`budget_id`)
2410 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2411
2412
2413 --
2414 -- Table structure for table `aqbudgetperiods`
2415 --
2416
2417
2418 DROP TABLE IF EXISTS `aqbudgetperiods`;
2419 CREATE TABLE `aqbudgetperiods` (
2420   `budget_period_id` int(11) NOT NULL auto_increment,
2421   `budget_period_startdate` date NOT NULL,
2422   `budget_period_enddate` date NOT NULL,
2423   `budget_period_active` tinyint(1) default '0',
2424   `budget_period_description` mediumtext,
2425   `budget_period_total` decimal(28,6),
2426   `budget_period_locked` tinyint(1) default NULL,
2427   `sort1_authcat` varchar(10) default NULL,
2428   `sort2_authcat` varchar(10) default NULL,
2429   PRIMARY KEY  (`budget_period_id`)
2430 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2431
2432 --
2433 -- Table structure for table `aqbudgets_planning`
2434 --
2435
2436 DROP TABLE IF EXISTS `aqbudgets_planning`;
2437 CREATE TABLE `aqbudgets_planning` (
2438   `plan_id` int(11) NOT NULL auto_increment,
2439   `budget_id` int(11) NOT NULL,
2440   `budget_period_id` int(11) NOT NULL,
2441   `estimated_amount` decimal(28,6) default NULL,
2442   `authcat` varchar(30) NOT NULL,
2443   `authvalue` varchar(30) NOT NULL,
2444   `display` tinyint(1) DEFAULT 1,
2445   PRIMARY KEY  (`plan_id`),
2446   CONSTRAINT `aqbudgets_planning_ifbk_1` FOREIGN KEY (`budget_id`) REFERENCES `aqbudgets` (`budget_id`) ON DELETE CASCADE ON UPDATE CASCADE
2447 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2448
2449 --
2450 -- Table structure for table 'aqcontract'
2451 --
2452
2453 DROP TABLE IF EXISTS `aqcontract`;
2454 CREATE TABLE `aqcontract` (
2455   `contractnumber` int(11) NOT NULL auto_increment,
2456   `contractstartdate` date default NULL,
2457   `contractenddate` date default NULL,
2458   `contractname` varchar(50) default NULL,
2459   `contractdescription` mediumtext,
2460   `booksellerid` int(11) not NULL,
2461   PRIMARY KEY  (`contractnumber`),
2462   CONSTRAINT `booksellerid_fk1` FOREIGN KEY (`booksellerid`)
2463        REFERENCES `aqbooksellers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
2464 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
2465
2466 --
2467 -- Table structure for table `aqorderdelivery`
2468 --
2469
2470 DROP TABLE IF EXISTS `aqorderdelivery`;
2471 CREATE TABLE `aqorderdelivery` (
2472   `ordernumber` date default NULL,
2473   `deliverynumber` smallint(6) NOT NULL default 0,
2474   `deliverydate` varchar(18) default NULL,
2475   `qtydelivered` smallint(6) default NULL,
2476   `deliverycomments` mediumtext
2477 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2478
2479 --
2480 -- Table structure for table `aqorders`
2481 --
2482
2483 DROP TABLE IF EXISTS `aqorders`;
2484 CREATE TABLE `aqorders` (
2485   `ordernumber` int(11) NOT NULL auto_increment,
2486   `biblionumber` int(11) default NULL,
2487   `entrydate` date default NULL,
2488   `quantity` smallint(6) default NULL,
2489   `currency` varchar(3) default NULL,
2490   `listprice` decimal(28,6) default NULL,
2491   `totalamount` decimal(28,6) default NULL,
2492   `datereceived` date default NULL,
2493   `booksellerinvoicenumber` mediumtext,
2494   `freight` decimal(28,6) default NULL,
2495   `unitprice` decimal(28,6) default NULL,
2496   `quantityreceived` smallint(6) NOT NULL default 0,
2497   `cancelledby` varchar(10) default NULL,
2498   `datecancellationprinted` date default NULL,
2499   `notes` mediumtext,
2500   `supplierreference` mediumtext,
2501   `purchaseordernumber` mediumtext,
2502   `subscription` tinyint(1) default NULL,
2503   `serialid` varchar(30) default NULL,
2504   `basketno` int(11) default NULL,
2505   `biblioitemnumber` int(11) default NULL,
2506   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2507   `rrp` decimal(13,2) default NULL,
2508   `ecost` decimal(13,2) default NULL,
2509   `gst` decimal(13,2) default NULL,
2510   `budget_id` int(11) NOT NULL,
2511   `budgetgroup_id` int(11) NOT NULL,
2512   `budgetdate` date default NULL,
2513   `sort1` varchar(80) default NULL,
2514   `sort2` varchar(80) default NULL,
2515   `sort1_authcat` varchar(10) default NULL,
2516   `sort2_authcat` varchar(10) default NULL,
2517   `uncertainprice` tinyint(1),
2518   PRIMARY KEY  (`ordernumber`),
2519   KEY `basketno` (`basketno`),
2520   KEY `biblionumber` (`biblionumber`),
2521   CONSTRAINT `aqorders_ibfk_1` FOREIGN KEY (`basketno`) REFERENCES `aqbasket` (`basketno`) ON DELETE CASCADE ON UPDATE CASCADE,
2522   CONSTRAINT `aqorders_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE SET NULL ON UPDATE CASCADE
2523 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2524
2525 --
2526 -- Table structure for table `aqorders_items`
2527 --
2528
2529 DROP TABLE IF EXISTS `aqorders_items`;
2530 CREATE TABLE `aqorders_items` (
2531   `ordernumber` int(11) NOT NULL,
2532   `itemnumber` int(11) NOT NULL,
2533   `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
2534   PRIMARY KEY  (`itemnumber`),
2535   KEY `ordernumber` (`ordernumber`)
2536 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2537
2538 --
2539 -- Table structure for table `fieldmapping`
2540 --
2541
2542 DROP TABLE IF EXISTS `fieldmapping`;
2543 CREATE TABLE `fieldmapping` (
2544   `id` int(11) NOT NULL auto_increment,
2545   `field` varchar(255) NOT NULL,
2546   `frameworkcode` char(4) NOT NULL default '',
2547   `fieldcode` char(3) NOT NULL,
2548   `subfieldcode` char(1) NOT NULL,
2549   PRIMARY KEY  (`id`)
2550 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2551
2552
2553 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
2554 /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
2555 /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
2556 /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
2557 /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
2558 /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
2559 /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
2560 /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
2561