

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                             CHARACTER(2)                
  POSTALCODE                        VARCHAR(10)                 
  COUNTRY                           VARCHAR(50)                 
                                    default 'USA'               

Primary Key

PK_AUTHORS                                                 [primary key]
  ID                                                            

Foreign Keys

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

Indexes

PK_AUTHORS                                                [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
                                                      [action statement]
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_10102                                          [check constraint]
  ID                                                            
BOOKS.AUTHORS.ID IS NOT NULL

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

SYS_CT_10104                                          [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                                                            

Foreign Keys

FK_SALES_BOOK                              [foreign key, with no action]
  ID <--(0..many) PUBLIC."PUBLISHER SALES".SALES.BOOKID                              

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

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

Indexes

PK_BOOKS                                                  [unique index]
  ID                                ascending                   

U_PREVIOUSEDITION                                         [unique index]
  PREVIOUSEDITIONID                 ascending                   

FK_PREVIOUSEDITION                                    [non-unique index]
  PREVIOUSEDITIONID                 ascending                   

Table Constraints

U_PREVIOUSEDITION                                    [unique constraint]
  PREVIOUSEDITIONID                                             

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

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

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

Used By Objects

PUBLIC.BOOKS.BOOKS                                               [table]



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                                                            

Foreign Keys

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

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

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

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

Indexes

FK_PUBLICATIONS_WRITER                                [non-unique index]
  WRITERID                          ascending                   

PK_PUBLICATIONS                                           [unique index]
  ID                                ascending                   

Table Constraints

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

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

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

