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