

Tables
========================================================================



PUBLIC.BOOKS.AUTHORS                                             [table]
------------------------------------------------------------------------
Contact details for book authors
  ID                                INTEGER NOT NULL            
  FIRSTNAME                         VARCHAR(20) NOT NULL        
  LASTNAME                          VARCHAR(20) NOT NULL        
  ADDRESS1                          VARCHAR(255)                
  ADDRESS2                          VARCHAR(255)                
  CITY                              VARCHAR(50)                 
  STATE                             VARCHAR(2)                  
  POSTALCODE                        VARCHAR(10)                 
  COUNTRY                           VARCHAR(50)                 

Primary Key

PK_AUTHORS                                                 [primary key]
  ID                                ascending                   

Foreign Keys

Z_FK_AUTHOR                                [foreign key, with no action]
  ID <--(0..many) PUBLIC.BOOKS.BOOKAUTHORS.AUTHORID                              

Indexes

SYS_IDX_PK_AUTHORS_10111                                  [unique index]
  ID                                ascending                   

IDX_B_AUTHORS                                         [non-unique index]
  LASTNAME                          ascending                   
  FIRSTNAME                         ascending                   

IDX_A_AUTHORS                                         [non-unique index]
  CITY                              ascending                   
  STATE                             ascending                   
  POSTALCODE                        ascending                   
  COUNTRY                           ascending                   

Triggers

TRG_AUTHORS                             [trigger, after delete, per row]
UPDATE BOOKS.PUBLISHERS SET PUBLISHER='Jacob'WHERE PUBLISHER='John'

Table Constraints

CHECK_UPPERCASE_STATE                                 [check constraint]
  STATE                                                         
BOOKS.AUTHORS.STATE=UPPER(BOOKS.AUTHORS.STATE)

SYS_CT_10108                                          [check constraint]
  ID                                                            
BOOKS.AUTHORS.ID IS NOT NULL

SYS_CT_10109                                          [check constraint]
  FIRSTNAME                                                     
BOOKS.AUTHORS.FIRSTNAME IS NOT NULL

SYS_CT_10110                                          [check constraint]
  LASTNAME                                                      
BOOKS.AUTHORS.LASTNAME IS NOT NULL



PUBLIC.BOOKS.BOOKS                                               [table]
------------------------------------------------------------------------
Details for published books
  ID                                INTEGER NOT NULL            
                                    Unique (internal) id for book
  TITLE                             VARCHAR(255) NOT NULL       
                                    Book title                  
  DESCRIPTION                       VARCHAR(255)                
                                    Book description
(Usually the blurb from the book jacket or promotional materials)
  PUBLISHERID                       INTEGER NOT NULL            
                                    Foreign key to the book publisher
  PUBLICATIONDATE                   DATE                        
                                    Book publication date       
  PRICE                             DOUBLE(64, 0)               
                                    Current price for the book  
  PREVIOUSEDITIONID                 INTEGER                     

Primary Key

PK_BOOKS                                                   [primary key]
  ID                                ascending                   

Foreign Keys

SYS_FK_10128                               [foreign key, with no action]
  ID <--(0..many) PUBLIC.BOOKS.BOOKAUTHORS.BOOKID                              

FK_PREVIOUSEDITION                         [foreign key, with no action]
  ID <--(0..1) PREVIOUSEDITIONID                                

Indexes

SYS_IDX_PK_BOOKS_10119                                    [unique index]
  ID                                ascending                   

SYS_IDX_U_PREVIOUSEDITION_10125                           [unique index]
  PREVIOUSEDITIONID                 ascending                   

SYS_IDX_FK_PREVIOUSEDITION_10123                      [non-unique index]
  PREVIOUSEDITIONID                 ascending                   

Table Constraints

U_PREVIOUSEDITION                                    [unique constraint]
  PREVIOUSEDITIONID                                             

SYS_CT_10116                                          [check constraint]
  ID                                                            
BOOKS.BOOKS.ID IS NOT NULL

SYS_CT_10117                                          [check constraint]
  TITLE                                                         
BOOKS.BOOKS.TITLE IS NOT NULL

SYS_CT_10118                                          [check constraint]
  PUBLISHERID                                                   
BOOKS.BOOKS.PUBLISHERID IS NOT NULL



PUBLIC.FOR_LINT.PUBLICATIONS                                     [table]
------------------------------------------------------------------------
  ID                                INTEGER NOT NULL            
  TITLE                             VARCHAR(255) NOT NULL       
                                    Publication title           
  DESCRIPTION                       VARCHAR(255)                
  WRITERID                          BIGINT NOT NULL             
  PUBLICATIONDATE                   DATE                        
  PRICE                             DOUBLE(64, 0)               
  "UPDATE"                          CLOB                        
  PRESS_RELEASE                     CLOB                        

Primary Key

PK_PUBLICATIONS                                            [primary key]
  ID                                ascending                   

Foreign Keys

FK_PUBLICATION_JOIN                        [foreign key, with no action]
  ID <--(0..many) PUBLIC.FOR_LINT.EXTRA_PK.PUBLICATIONID                              

FK_PUBLICATION                             [foreign key, with no action]
  ID <--(0..many) PUBLIC.FOR_LINT.PUBLICATIONWRITERS.PUBLICATIONID                              

FK_WRITERS_PUBLICATION                     [foreign key, with no action]
  ID <--(0..many) PUBLIC.FOR_LINT.WRITERS.PUBLICATION_ID                              

FK_PUBLICATIONS_WRITER                     [foreign key, with no action]
  WRITERID (0..many)--> PUBLIC.FOR_LINT.WRITERS.ID                              

Indexes

SYS_IDX_FK_PUBLICATIONS_WRITER_10182                  [non-unique index]
  WRITERID                          ascending                   

SYS_IDX_PK_PUBLICATIONS_10178                             [unique index]
  ID                                ascending                   

Table Constraints

SYS_CT_10175                                          [check constraint]
  ID                                                            
FOR_LINT.PUBLICATIONS.ID IS NOT NULL

SYS_CT_10176                                          [check constraint]
  TITLE                                                         
FOR_LINT.PUBLICATIONS.TITLE IS NOT NULL

SYS_CT_10177                                          [check constraint]
  WRITERID                                                      
FOR_LINT.PUBLICATIONS.WRITERID IS NOT NULL

