| generated by | SchemaCrawler 16.21.3 |
| generated on | 2024-06-17 23:04:22 |
| database version | HSQL Database Engine 2.7.3 |
| driver version | HSQL Database Engine Driver 2.7.3 |
| 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) | |
| Primary Key | ||
| PK_AUTHORS | [primary key] | |
| ID | ||
| Foreign Keys | ||
| Z_FK_AUTHOR | [foreign key, with no action] | |
| ID ←(0..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 | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| SA → OTHERUSER | ||
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| ID | INTEGER | |
| FIRSTNAME | VARCHAR(20) | |
| LASTNAME | VARCHAR(20) | |
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| Definition | ||
| [definition] | ||
| SELECT ID,FIRSTNAME,LASTNAME FROM BOOKS.AUTHORS | ||
| Table Usage | ||
| PUBLIC.BOOKS.AUTHORS | [table] | |
| Relationship between books and their authors, along with the latest updated information | ||
| BOOKID | INTEGER NOT NULL | |
| AUTHORID | INTEGER NOT NULL | |
| SOMEDATA | VARCHAR(30) | |
| Foreign Keys | ||
| Z_FK_AUTHOR | [foreign key, with no action] | |
| AUTHORID (0..many)→ PUBLIC.BOOKS.AUTHORS.ID | ||
| SYS_FK_10118 | [foreign key, with no action] | |
| BOOKID (0..many)→ PUBLIC.BOOKS.BOOKS.ID | ||
| Indexes | ||
| Z_FK_AUTHOR | [non-unique index] | |
| AUTHORID | ascending | |
| SYS_FK_10118 | [non-unique index] | |
| BOOKID | ascending | |
| UIDX_BOOKAUTHORS | [unique index] | |
| BOOKID | ascending | |
| AUTHORID | ascending | |
| Table Constraints | ||
| SYS_CT_10116 | [check constraint] | |
| BOOKID | ||
| BOOKS.BOOKAUTHORS.BOOKID IS NOT NULL | ||
| SYS_CT_10117 | [check constraint] | |
| AUTHORID | ||
| BOOKS.BOOKAUTHORS.AUTHORID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| 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 ←(0..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 | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| "Id" | INTEGER NOT NULL | |
| NAME | VARCHAR(20) | |
| Primary Key | ||
| "PK_Celebrities" | [primary key] | |
| "Id" | ||
| Foreign Keys | ||
| SYS_FK_10128 | [foreign key, with no action] | |
| "Id" ←(0..1) PUBLIC.BOOKS."Celebrity Updates"."Celebrity Id" | ||
| Indexes | ||
| "PK_Celebrities" | [unique index] | |
| "Id" | ascending | |
| Table Constraints | ||
| SYS_CT_10125 | [check constraint] | |
| "Id" | ||
| BOOKS."Celebrities"."Id" IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| "Celebrity Id" | INTEGER NOT NULL | |
| "UPDATE" | VARCHAR(20) | |
| Primary Key | ||
| "PK Celebrity Updates" | [primary key] | |
| "Celebrity Id" | ||
| Foreign Keys | ||
| SYS_FK_10128 | [foreign key, with no action] | |
| "Celebrity Id" (0..1)→ PUBLIC.BOOKS."Celebrities"."Id" | ||
| Indexes | ||
| "PK Celebrity Updates" | [unique index] | |
| "Celebrity Id" | ascending | |
| SYS_FK_10128 | [non-unique index] | |
| "Celebrity Id" | ascending | |
| Table Constraints | ||
| SYS_CT_10127 | [check constraint] | |
| "Celebrity Id" | ||
| BOOKS."Celebrity Updates"."Celebrity Id" IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| ID | INTEGER NOT NULL | |
| DATA | CLOB | |
| COUPONS | INTEGER ARRAY | |
| BOOKS | VARCHAR(20) ARRAY[10] | |
| Primary Key | ||
| PK_COUPONS | [primary key] | |
| ID | ||
| Indexes | ||
| PK_COUPONS | [unique index] | |
| ID | ascending | |
| Table Constraints | ||
| SYS_CT_10091 | [check constraint] | |
| ID | ||
| BOOKS.COUPONS.ID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| ID | INTEGER NOT NULL | |
| DATA | VALID_STRING(20) | |
| Primary Key | ||
| PK_CUSTOMERDATA | [primary key] | |
| ID | ||
| Indexes | ||
| PK_CUSTOMERDATA | [unique index] | |
| ID | ascending | |
| Table Constraints | ||
| SYS_CT_10100 | [check constraint] | |
| ID | ||
| BOOKS.CUSTOMERDATA.ID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| ID | INTEGER NOT NULL | |
| FIRSTNAME | NAME_TYPE NOT NULL | |
| LASTNAME | NAME_TYPE NOT NULL | |
| AGE | AGE_TYPE | |
| Primary Key | ||
| PK_CUSTOMERS | [primary key] | |
| ID | ||
| Indexes | ||
| PK_CUSTOMERS | [unique index] | |
| ID | ascending | |
| Table Constraints | ||
| SYS_CT_10093 | [check constraint] | |
| ID | ||
| BOOKS.CUSTOMERS.ID IS NOT NULL | ||
| SYS_CT_10094 | [check constraint] | |
| FIRSTNAME | ||
| BOOKS.CUSTOMERS.FIRSTNAME IS NOT NULL | ||
| SYS_CT_10095 | [check constraint] | |
| LASTNAME | ||
| BOOKS.CUSTOMERS.LASTNAME IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| List of book publishers | ||
| ID | INTEGER NOT NULL | |
| auto-incremented | ||
| Unique (internal) id for book publisher | ||
| PUBLISHER | VARCHAR(255) | |
| Name of book publisher | ||
| Primary Key | ||
| SYS_PK_10124 | [primary key] | |
| ID | ||
| Foreign Keys | ||
| FK_ΒΙΒΛΊΑ_PUBLISHERS | [foreign key, with no action] | |
| ID ←(0..many) PUBLIC.BOOKS.ΒΙΒΛΊΑ.ΕΚΔΌΤΗΣ | ||
| Indexes | ||
| SYS_PK_10124 | [unique index] | |
| ID | ascending | |
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| ΜΟΝΑΔΙΚΌΣ | SMALLINT NOT NULL | |
| ΤΊΤΛΟΣ | VARCHAR(255) NOT NULL | |
| ΠΕΡΙΓΡΑΦΉ | VARCHAR(255) | |
| ΕΚΔΌΤΗΣ | SMALLINT NOT NULL | |
| Primary Key | ||
| PK_ΒΙΒΛΊΑ | [primary key] | |
| ΜΟΝΑΔΙΚΌΣ | ||
| Foreign Keys | ||
| FK_ΒΙΒΛΊΑ_PUBLISHERS | [foreign key, with no action] | |
| ΕΚΔΌΤΗΣ (0..many)→ PUBLIC.BOOKS.PUBLISHERS.ID | ||
| Indexes | ||
| FK_ΒΙΒΛΊΑ_PUBLISHERS | [non-unique index] | |
| ΕΚΔΌΤΗΣ | ascending | |
| PK_ΒΙΒΛΊΑ | [unique index] | |
| ΜΟΝΑΔΙΚΌΣ | ascending | |
| Table Constraints | ||
| SYS_CT_10131 | [check constraint] | |
| ΜΟΝΑΔΙΚΌΣ | ||
| BOOKS.ΒΙΒΛΊΑ.ΜΟΝΑΔΙΚΌΣ IS NOT NULL | ||
| SYS_CT_10132 | [check constraint] | |
| ΤΊΤΛΟΣ | ||
| BOOKS.ΒΙΒΛΊΑ.ΤΊΤΛΟΣ IS NOT NULL | ||
| SYS_CT_10133 | [check constraint] | |
| ΕΚΔΌΤΗΣ | ||
| BOOKS.ΒΙΒΛΊΑ.ΕΚΔΌΤΗΣ IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → SA (grantable) | ||
| Extra table with just a primary key | ||
| WRITERID | BIGINT NOT NULL | |
| PUBLICATIONID | INTEGER NOT NULL | |
| ID | INTEGER NOT NULL | |
| Primary Key | ||
| PK_EXTRA_PK | [primary key] | |
| ID | ||
| Foreign Keys | ||
| FK_PUBLICATION_JOIN | [foreign key, with no action] | |
| PUBLICATIONID (0..many)→ PUBLIC.FOR_LINT.PUBLICATIONS.ID | ||
| FK_WRITER_JOIN | [foreign key, with no action] | |
| WRITERID (0..many)→ PUBLIC.FOR_LINT.WRITERS.ID | ||
| Indexes | ||
| FK_WRITER_JOIN | [non-unique index] | |
| WRITERID | ascending | |
| PK_EXTRA_PK | [unique index] | |
| ID | ascending | |
| FK_PUBLICATION_JOIN | [non-unique index] | |
| PUBLICATIONID | ascending | |
| Table Constraints | ||
| SYS_CT_10180 | [check constraint] | |
| WRITERID | ||
| FOR_LINT.EXTRA_PK.WRITERID IS NOT NULL | ||
| SYS_CT_10181 | [check constraint] | |
| PUBLICATIONID | ||
| FOR_LINT.EXTRA_PK.PUBLICATIONID IS NOT NULL | ||
| SYS_CT_10182 | [check constraint] | |
| ID | ||
| FOR_LINT.EXTRA_PK.ID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| "Global Count" | INTEGER | |
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| 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 ←(0..many) PUBLIC.FOR_LINT.EXTRA_PK.PUBLICATIONID | ||
| FK_PUBLICATIONS_WRITER | [foreign key, with no action] | |
| WRITERID (0..many)→ PUBLIC.FOR_LINT.WRITERS.ID | ||
| 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 | ||
| Indexes | ||
| FK_PUBLICATIONS_WRITER | [non-unique index] | |
| WRITERID | ascending | |
| PK_PUBLICATIONS | [unique index] | |
| ID | ascending | |
| Table Constraints | ||
| SYS_CT_10165 | [check constraint] | |
| ID | ||
| FOR_LINT.PUBLICATIONS.ID IS NOT NULL | ||
| SYS_CT_10166 | [check constraint] | |
| TITLE | ||
| FOR_LINT.PUBLICATIONS.TITLE IS NOT NULL | ||
| SYS_CT_10167 | [check constraint] | |
| WRITERID | ||
| FOR_LINT.PUBLICATIONS.WRITERID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| PUBLICATIONID | INTEGER NOT NULL | |
| WRITERID | BIGINT NOT NULL | |
| Foreign Keys | ||
| FK_PUBLICATION | [foreign key, with no action] | |
| PUBLICATIONID (0..many)→ PUBLIC.FOR_LINT.PUBLICATIONS.ID | ||
| FK_WRITER | [foreign key, with no action] | |
| WRITERID (0..many)→ PUBLIC.FOR_LINT.WRITERS.ID | ||
| Indexes | ||
| FK_WRITER | [non-unique index] | |
| WRITERID | ascending | |
| FK_PUBLICATION | [non-unique index] | |
| PUBLICATIONID | ascending | |
| Table Constraints | ||
| SYS_CT_10172 | [check constraint] | |
| PUBLICATIONID | ||
| FOR_LINT.PUBLICATIONWRITERS.PUBLICATIONID IS NOT NULL | ||
| SYS_CT_10173 | [check constraint] | |
| WRITERID | ||
| FOR_LINT.PUBLICATIONWRITERS.WRITERID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| ID | INTEGER NOT NULL | |
| TITLE | VARCHAR(255) NOT NULL | |
| Primary Key | ||
| PK_SELFREFERENCE | [primary key] | |
| ID | ||
| Foreign Keys | ||
| FK_SELFREFERENCE | [foreign key, with no action] | |
| ID ←(0..1) ID | ||
| Indexes | ||
| PK_SELFREFERENCE | [unique index] | |
| ID | ascending | |
| FK_SELFREFERENCE | [non-unique index] | |
| ID | ascending | |
| Table Constraints | ||
| SYS_CT_10188 | [check constraint] | |
| ID | ||
| FOR_LINT.SELFREFERENCE.ID IS NOT NULL | ||
| SYS_CT_10189 | [check constraint] | |
| TITLE | ||
| FOR_LINT.SELFREFERENCE.TITLE IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| ID | BIGINT NOT NULL | |
| FIRSTNAME | VARCHAR(20) NOT NULL | |
| LASTNAME | VARCHAR(20) NOT NULL | |
| ADDRESS1 | VARCHAR(255) | |
| ADDRESS2 | VARCHAR(255) NOT NULL | |
| CITY | VARCHAR(50) | |
| STATE | VARCHAR(2) | |
| POSTALCODE | VARCHAR(10) | |
| COUNTRY | VARCHAR(50) | |
| PHONE1 | VARCHAR(10) | |
| PHONE2 | VARCHAR(15) | |
| EMAIL1 | VARCHAR(10) | |
| EMAIL2 | INTEGER | |
| FAX | VARCHAR(10) | |
| FAX3 | INTEGER | |
| HOMEEMAIL11 | VARCHAR(10) | |
| HOMEEMAIL12 | VARCHAR(10) | |
| PUBLICATION_ID | BIGINT NOT NULL | |
| Primary Key | ||
| PK_WRITERS | [primary key] | |
| ID | ||
| Foreign Keys | ||
| FK_WRITER_JOIN | [foreign key, with no action] | |
| ID ←(0..many) PUBLIC.FOR_LINT.EXTRA_PK.WRITERID | ||
| FK_PUBLICATIONS_WRITER | [foreign key, with no action] | |
| ID ←(0..many) PUBLIC.FOR_LINT.PUBLICATIONS.WRITERID | ||
| FK_WRITER | [foreign key, with no action] | |
| ID ←(0..many) PUBLIC.FOR_LINT.PUBLICATIONWRITERS.WRITERID | ||
| FK_WRITERS_PUBLICATION | [foreign key, with no action] | |
| PUBLICATION_ID (0..many)→ PUBLIC.FOR_LINT.PUBLICATIONS.ID | ||
| Indexes | ||
| PK_WRITERS | [unique index] | |
| ID | ascending | |
| FK_WRITERS_PUBLICATION | [non-unique index] | |
| PUBLICATION_ID | ascending | |
| IDX_A1_WRITERS | [non-unique index] | |
| CITY | ascending | |
| STATE | ascending | |
| IDX_U_WRITERS | [unique index] | |
| EMAIL1 | ascending | |
| COUNTRY | ascending | |
| IDX_B_WRITERS | [non-unique index] | |
| LASTNAME | ascending | |
| FIRSTNAME | ascending | |
| IDX_A_WRITERS | [non-unique index] | |
| CITY | ascending | |
| STATE | ascending | |
| POSTALCODE | ascending | |
| COUNTRY | ascending | |
| Table Constraints | ||
| CHECK_UPPERCASE_STATE | [check constraint] | |
| STATE | ||
| FOR_LINT.WRITERS.STATE=UPPER(FOR_LINT.WRITERS.STATE) | ||
| SYS_CT_10154 | [check constraint] | |
| ID | ||
| FOR_LINT.WRITERS.ID IS NOT NULL | ||
| SYS_CT_10155 | [check constraint] | |
| FIRSTNAME | ||
| FOR_LINT.WRITERS.FIRSTNAME IS NOT NULL | ||
| SYS_CT_10156 | [check constraint] | |
| LASTNAME | ||
| FOR_LINT.WRITERS.LASTNAME IS NOT NULL | ||
| SYS_CT_10157 | [check constraint] | |
| ADDRESS2 | ||
| FOR_LINT.WRITERS.ADDRESS2 IS NOT NULL | ||
| SYS_CT_10158 | [check constraint] | |
| PUBLICATION_ID | ||
| FOR_LINT.WRITERS.PUBLICATION_ID IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| CITY | VARCHAR(50) NOT NULL | |
| STATE | VARCHAR(2) NOT NULL | |
| POSTALCODE | VARCHAR(10) NOT NULL | |
| COUNTRY | VARCHAR(50) NOT NULL | |
| Primary Key | ||
| PK_CUSTOMERS | [primary key] | |
| POSTALCODE | ||
| COUNTRY | ||
| Foreign Keys | ||
| FK_SALES_REGIONS | [foreign key, with no action] | |
| POSTALCODE ←(0..many) PUBLIC."PUBLISHER SALES".SALES.POSTALCODE | ||
| COUNTRY ←(0..many) PUBLIC."PUBLISHER SALES".SALES.COUNTRY | ||
| Indexes | ||
| PK_CUSTOMERS | [unique index] | |
| POSTALCODE | ascending | |
| COUNTRY | ascending | |
| Table Constraints | ||
| SYS_CT_10202 | [check constraint] | |
| CITY | ||
| "PUBLISHER SALES".REGIONS.CITY IS NOT NULL | ||
| SYS_CT_10203 | [check constraint] | |
| STATE | ||
| "PUBLISHER SALES".REGIONS.STATE IS NOT NULL | ||
| SYS_CT_10204 | [check constraint] | |
| POSTALCODE | ||
| "PUBLISHER SALES".REGIONS.POSTALCODE IS NOT NULL | ||
| SYS_CT_10205 | [check constraint] | |
| COUNTRY | ||
| "PUBLISHER SALES".REGIONS.COUNTRY IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| POSTALCODE | VARCHAR(10) NOT NULL | |
| COUNTRY | VARCHAR(50) NOT NULL | |
| BOOKID | INTEGER | |
| COUPON_ID | INTEGER | |
| PERIODENDDATE | DATE | |
| TOTALAMOUNT | DOUBLE(64, 0) | |
| SALESDATAID | INTEGER | |
| Foreign Keys | ||
| FK_SALES_BOOK | [foreign key, with no action] | |
| BOOKID (0..many)→ PUBLIC.BOOKS.BOOKS.ID | ||
| FK_SALES_SALESDATA | [foreign key, with no action] | |
| SALESDATAID (0..many)→ PUBLIC."PUBLISHER SALES".SALESDATA.SALESDATAID | ||
| FK_SALES_REGIONS | [foreign key, with no action] | |
| POSTALCODE (0..many)→ PUBLIC."PUBLISHER SALES".REGIONS.POSTALCODE | ||
| COUNTRY (0..many)→ PUBLIC."PUBLISHER SALES".REGIONS.COUNTRY | ||
| Indexes | ||
| FK_SALES_BOOK | [non-unique index] | |
| BOOKID | ascending | |
| FK_SALES_SALESDATA | [non-unique index] | |
| SALESDATAID | ascending | |
| FK_SALES_REGIONS | [non-unique index] | |
| POSTALCODE | ascending | |
| COUNTRY | ascending | |
| Table Constraints | ||
| SYS_CT_10211 | [check constraint] | |
| POSTALCODE | ||
| "PUBLISHER SALES".SALES.POSTALCODE IS NOT NULL | ||
| SYS_CT_10212 | [check constraint] | |
| COUNTRY | ||
| "PUBLISHER SALES".SALES.COUNTRY IS NOT NULL | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SALESDATAID | INTEGER | |
| YEARLYAMOUNT | DOUBLE(64, 0) | |
| Foreign Keys | ||
| FK_SALES_SALESDATA | [foreign key, with no action] | |
| SALESDATAID ←(0..many) PUBLIC."PUBLISHER SALES".SALES.SALESDATAID | ||
| Indexes | ||
| UQ_CUSTOMERS | [unique index] | |
| SALESDATAID | ascending | |
| Table Constraints | ||
| UQ_CUSTOMERS | [unique constraint] | |
| SALESDATAID | ||
| Privileges and Grants | ||
| DELETE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| INSERT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| REFERENCES | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| SELECT | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| TRIGGER | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| UPDATE | [privilege] | |
| _SYSTEM → DBA (grantable) | ||
| PUBLISHER | CHARACTER VARYING, out | |
| [specific name] | ||
| NEW_PUBLISHER_FORCE_VALUE | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE BOOKS.NEW_PUBLISHER(OUT PUBLISHER VARCHAR(50)) SPECIFIC NEW_PUBLISHER_FORCE_VALUE LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL NEW SAVEPOINT LEVEL SET PUBLISHER = 'New Publisher' | ||
| NEWPUBLISHER | CHARACTER VARYING, in | |
| PUBLISHER | CHARACTER VARYING, out | |
| [specific name] | ||
| NEW_PUBLISHER_10151 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE BOOKS.NEW_PUBLISHER(IN NEWPUBLISHER VARCHAR(50),OUT PUBLISHER VARCHAR(50)) SPECIFIC NEW_PUBLISHER_10151 LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL NEW SAVEPOINT LEVEL SET PUBLISHER = NEWPUBLISHER | ||
| ONE | INTEGER, in | |
| [specific name] | ||
| CUSTOMADD_10153 | ||
| Definition | ||
| [definition] | ||
| CREATE FUNCTION BOOKS.CUSTOMADD(IN ONE INTEGER) RETURNS INTEGER SPECIFIC CUSTOMADD_10153 LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL CALLED ON NULL INPUT RETURN BOOKS.CUSTOMADD(ONE,1) | ||
| ONE | INTEGER, in | |
| TWO | INTEGER, in | |
| [specific name] | ||
| CUSTOMADD_10152 | ||
| Definition | ||
| [definition] | ||
| CREATE FUNCTION BOOKS.CUSTOMADD(IN ONE INTEGER,IN TWO INTEGER) RETURNS INTEGER SPECIFIC CUSTOMADD_10152 LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL CALLED ON NULL INPUT RETURN ONE+TWO | ||
| B_COUNT | INTEGER, in | |
| B_OFFSET | INTEGER, in | |
| L_ID | BIGINT, in | |
| [specific name] | ||
| ALLOC_BLOCKS_10071 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.ALLOC_BLOCKS(IN B_COUNT INTEGER,IN B_OFFSET INTEGER,IN L_ID BIGINT) SPECIFIC ALLOC_BLOCKS_10071 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE LOB_ADDR INT DEFAULT NULL;DECLARE REMAINING_COUNT INT DEFAULT 0;DECLARE BL_ADDR INT DEFAULT NULL;DECLARE TEMP_COUNT INT DEFAULT 0;DECLARE BL_OFFSET INT DEFAULT 0;SET REMAINING_COUNT=B_COUNT;SET BL_OFFSET=B_OFFSET;MAIN_LOOP:LOOP SET BL_ADDR=(SELECT BLOCK_ADDR FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_COUNT=REMAINING_COUNT AND TX_ID=0 FETCH 1 ROW ONLY);IF BL_ADDR IS NOT NULL THEN CALL CONVERT_BLOCK(BL_ADDR,REMAINING_COUNT,BL_OFFSET,L_ID);IF LOB_ADDR IS NULL THEN SET LOB_ADDR=BL_ADDR;END IF;LEAVE MAIN_LOOP;END IF;SET(BL_ADDR,TEMP_COUNT)=(SELECT BLOCK_ADDR,BLOCK_COUNT FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_COUNT<REMAINING_COUNT AND TX_ID=0 FETCH 1 ROW ONLY);IF BL_ADDR IS NOT NULL THEN CALL CONVERT_BLOCK(BL_ADDR,TEMP_COUNT,BL_OFFSET,L_ID);IF LOB_ADDR IS NULL THEN SET LOB_ADDR=BL_ADDR;END IF;SET REMAINING_COUNT=REMAINING_COUNT-TEMP_COUNT;SET BL_OFFSET=BL_OFFSET+TEMP_COUNT;SET BL_ADDR=NULL;SET TEMP_COUNT=0;ELSE CALL CREATE_EMPTY_BLOCK(BL_ADDR,REMAINING_COUNT);CALL CONVERT_BLOCK(BL_ADDR,REMAINING_COUNT,BL_OFFSET,L_ID);IF LOB_ADDR IS NULL THEN SET LOB_ADDR=BL_ADDR;END IF;LEAVE MAIN_LOOP;END IF;END LOOP MAIN_LOOP;END | ||
| B_COUNT | INTEGER, in | |
| B_OFFSET | INTEGER, in | |
| L_ID | BIGINT, in | |
| [specific name] | ||
| ALLOC_SINGLE_BLOCK_10074 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.ALLOC_SINGLE_BLOCK(IN B_COUNT INTEGER,IN B_OFFSET INTEGER,IN L_ID BIGINT) SPECIFIC ALLOC_SINGLE_BLOCK_10074 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE BL_ADDR INT DEFAULT NULL;SET BL_ADDR=(SELECT BLOCK_ADDR FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_COUNT=B_COUNT AND TX_ID=0 FETCH 1 ROW ONLY);IF BL_ADDR IS NULL THEN CALL CREATE_EMPTY_BLOCK(BL_ADDR,B_COUNT);END IF;CALL CONVERT_BLOCK(BL_ADDR,B_COUNT,B_OFFSET,L_ID);END | ||
| B_ADDR | INTEGER, in | |
| B_COUNT | INTEGER, in | |
| B_OFFSET | INTEGER, in | |
| L_ID | BIGINT, in | |
| [specific name] | ||
| CONVERT_BLOCK_10029 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.CONVERT_BLOCK(IN B_ADDR INTEGER,IN B_COUNT INTEGER,IN B_OFFSET INTEGER,IN L_ID BIGINT) SPECIFIC CONVERT_BLOCK_10029 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DELETE FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_ADDR=B_ADDR;INSERT INTO SYSTEM_LOBS.LOBS(BLOCK_ADDR,BLOCK_COUNT,BLOCK_OFFSET,LOB_ID) VALUES(B_ADDR,B_COUNT,B_OFFSET,L_ID);END | ||
| B_ADDR | INTEGER, in/ out | |
| B_COUNT | INTEGER, in | |
| [specific name] | ||
| CREATE_EMPTY_BLOCK_10063 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.CREATE_EMPTY_BLOCK(INOUT B_ADDR INTEGER,IN B_COUNT INTEGER) SPECIFIC CREATE_EMPTY_BLOCK_10063 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE TEMP_COUNT INT DEFAULT NULL;DECLARE TEMP_ADDR INT DEFAULT NULL;SET(TEMP_ADDR,TEMP_COUNT)=(SELECT BLOCK_ADDR,BLOCK_COUNT FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_COUNT>B_COUNT AND TX_ID=0 FETCH 1 ROW ONLY);IF TEMP_ADDR IS NULL THEN SIGNAL SQLSTATE'45000';END IF;UPDATE SYSTEM_LOBS.BLOCKS SET BLOCK_COUNT=B_COUNT WHERE BLOCK_ADDR=TEMP_ADDR;INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID) VALUES(TEMP_ADDR+B_COUNT,TEMP_COUNT-B_COUNT,0);SET B_ADDR=TEMP_ADDR;END | ||
| L_ID | BIGINT, in | |
| B_OFFSET | INTEGER, in | |
| B_LIMIT | INTEGER, in | |
| TX_ID | BIGINT, in | |
| [specific name] | ||
| DELETE_BLOCKS_10060 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.DELETE_BLOCKS(IN L_ID BIGINT,IN B_OFFSET INTEGER,IN B_LIMIT INTEGER,IN TX_ID BIGINT) SPECIFIC DELETE_BLOCKS_10060 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID)(SELECT BLOCK_ADDR,BLOCK_COUNT,TX_ID FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID=L_ID AND BLOCK_OFFSET>=B_OFFSET AND BLOCK_OFFSET<B_LIMIT);DELETE FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID=L_ID AND BLOCK_OFFSET>=B_OFFSET AND BLOCK_OFFSET<B_LIMIT;END | ||
| L_ID | BIGINT, in | |
| TX_ID | BIGINT, in | |
| [specific name] | ||
| DELETE_LOB_10031 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.DELETE_LOB(IN L_ID BIGINT,IN TX_ID BIGINT) SPECIFIC DELETE_LOB_10031 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID)(SELECT BLOCK_ADDR,BLOCK_COUNT,TX_ID FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID=L_ID);DELETE FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID=L_ID;DELETE FROM SYSTEM_LOBS.PARTS WHERE LOB_ID=L_ID;DELETE FROM SYSTEM_LOBS.LOB_IDS WHERE LOB_IDS.LOB_ID=L_ID;END | ||
| L_IDS | BIGINT ARRAY, in | |
| [specific name] | ||
| DELETE_UNUSED_10046 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.DELETE_UNUSED(IN L_IDS BIGINT ARRAY) SPECIFIC DELETE_UNUSED_10046 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE TABLE LIVE_IDS(LIVE_ID INT);DECLARE TABLE TEMP_IDS(TEMP_ID INT);DECLARE TEMP_COUNT INT DEFAULT 1;WHILE TEMP_COUNT<=CARDINALITY(L_IDS)DO INSERT INTO LIVE_IDS(LIVE_ID) VALUES L_IDS[TEMP_COUNT];SET TEMP_COUNT=TEMP_COUNT+1;END WHILE;SET TEMP_COUNT=0;REPEAT INSERT INTO TEMP_IDS(TEMP_ID) SELECT LOB_IDS.LOB_ID FROM SYSTEM_LOBS.LOB_IDS WHERE LOB_USAGE_COUNT<1 AND LOB_IDS.LOB_ID NOT IN(SELECT LIVE_ID FROM LIVE_IDS)LIMIT 1000;INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID)(SELECT BLOCK_ADDR,BLOCK_COUNT,0 FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS));DELETE FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);DELETE FROM SYSTEM_LOBS.PARTS WHERE LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);DELETE FROM SYSTEM_LOBS.LOB_IDS WHERE LOB_IDS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);GET DIAGNOSTICS TEMP_COUNT=ROW_COUNT;DELETE FROM TEMP_IDS;UNTIL TEMP_COUNT<1000 END REPEAT;END | ||
| LIMIT_ID | BIGINT, in | |
| TOTAL_COUNT | INTEGER, out | |
| [specific name] | ||
| DELETE_UNUSED_LOBS_10058 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.DELETE_UNUSED_LOBS(IN LIMIT_ID BIGINT,OUT TOTAL_COUNT INTEGER) SPECIFIC DELETE_UNUSED_LOBS_10058 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE TABLE TEMP_IDS(TEMP_ID INT);DECLARE TEMP_COUNT INT DEFAULT 0;DECLARE TOTAL INT DEFAULT 0;REPEAT INSERT INTO TEMP_IDS(TEMP_ID) SELECT LOB_IDS.LOB_ID FROM SYSTEM_LOBS.LOB_IDS WHERE LOB_USAGE_COUNT=0 AND LOB_IDS.LOB_ID<LIMIT_ID LIMIT 1000;INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID)(SELECT BLOCK_ADDR,BLOCK_COUNT,0 FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS));DELETE FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);DELETE FROM SYSTEM_LOBS.PARTS WHERE LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);DELETE FROM SYSTEM_LOBS.LOB_IDS WHERE LOB_IDS.LOB_ID IN(SELECT TEMP_ID FROM TEMP_IDS);GET DIAGNOSTICS TEMP_COUNT=ROW_COUNT;SET TOTAL=TOTAL+TEMP_COUNT;DELETE FROM TEMP_IDS;UNTIL TEMP_COUNT<1000 END REPEAT;SET TOTAL_COUNT=TOTAL;END | ||
| B_OFFSET | INTEGER, in | |
| L_ID | BIGINT, in | |
| [specific name] | ||
| DIVIDE_BLOCK_10066 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.DIVIDE_BLOCK(IN B_OFFSET INTEGER,IN L_ID BIGINT) SPECIFIC DIVIDE_BLOCK_10066 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE BL_ADDR INT DEFAULT NULL;DECLARE BL_COUNT INT DEFAULT NULL;DECLARE BL_OFFSET INT DEFAULT NULL;SET(BL_ADDR,BL_COUNT,BL_OFFSET)=(SELECT BLOCK_ADDR,BLOCK_COUNT,BLOCK_OFFSET FROM SYSTEM_LOBS.LOBS WHERE LOBS.LOB_ID=L_ID AND B_OFFSET>BLOCK_OFFSET AND B_OFFSET<BLOCK_OFFSET+BLOCK_COUNT);IF BL_ADDR IS NULL THEN SIGNAL SQLSTATE'45000';END IF;DELETE FROM SYSTEM_LOBS.LOBS WHERE BLOCK_ADDR=BL_ADDR;INSERT INTO SYSTEM_LOBS.LOBS(BLOCK_ADDR,BLOCK_COUNT,BLOCK_OFFSET,LOB_ID) VALUES(BL_ADDR,B_OFFSET-BL_OFFSET,BL_OFFSET,L_ID);INSERT INTO SYSTEM_LOBS.LOBS(BLOCK_ADDR,BLOCK_COUNT,BLOCK_OFFSET,LOB_ID) VALUES(BL_ADDR+B_OFFSET-BL_OFFSET,BL_OFFSET+BL_COUNT-B_OFFSET,B_OFFSET,L_ID);END | ||
| [specific name] | ||
| MERGE_EMPTY_BLOCKS_10079 | ||
| Definition | ||
| [definition] | ||
| CREATE PROCEDURE SYSTEM_LOBS.MERGE_EMPTY_BLOCKS() SPECIFIC MERGE_EMPTY_BLOCKS_10079 LANGUAGE SQL NOT DETERMINISTIC MODIFIES SQL DATA NEW SAVEPOINT LEVEL BEGIN ATOMIC DECLARE BL_BASE_ADDR INT DEFAULT-1;DECLARE BL_BASE_COUNT INT;DECLARE BL_ADDR INT;DECLARE BL_COUNT INT;DECLARE BL_MERGE BOOLEAN;REPEAT SET BL_BASE_COUNT=NULL;SET(BL_BASE_ADDR,BL_BASE_COUNT)=(SELECT BLOCK_ADDR,BLOCK_COUNT FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_ADDR>BL_BASE_ADDR ORDER BY BLOCK_ADDR FETCH 1 ROW ONLY);IF BL_BASE_COUNT IS NOT NULL THEN SET BL_MERGE=FALSE;REPEAT SET BL_ADDR=NULL;SET(BL_ADDR,BL_COUNT)=(SELECT BLOCK_ADDR,BLOCK_COUNT FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_ADDR=BL_BASE_ADDR+BL_BASE_COUNT);IF BL_ADDR IS NOT NULL THEN SET BL_BASE_COUNT=BL_BASE_COUNT+BL_COUNT;SET BL_MERGE=TRUE;END IF;UNTIL BL_ADDR IS NULL END REPEAT;IF BL_MERGE THEN DELETE FROM SYSTEM_LOBS.BLOCKS WHERE BLOCK_ADDR>=BL_BASE_ADDR AND BLOCK_ADDR<BL_BASE_ADDR+BL_BASE_COUNT;INSERT INTO SYSTEM_LOBS.BLOCKS(BLOCK_ADDR,BLOCK_COUNT,TX_ID) VALUES BL_BASE_ADDR,BL_BASE_COUNT,0;END IF;END IF;UNTIL BL_BASE_COUNT IS NULL END REPEAT;END | ||
| increment | 1 | |
| start value | 1 | |
| minimum value | -2147483648 | |
| maximum value | 2147483647 | |
| cycle | false |
| increment | 1 | |
| start value | 1 | |
| minimum value | -9223372036854775808 | |
| maximum value | 9223372036854775807 | |
| cycle | false |
| PUBLICATIONS → PUBLIC.BOOKS.BOOKS |
| BIGINT | [data type] | |
| defined with no parameters | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| BINARY | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| BIT | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| BLOB | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| BOOLEAN | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| CHARACTER | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| CLOB | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| DATE | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| DECIMAL | [data type] | |
| defined with PRECISION,SCALE | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| DOUBLE | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| FLOAT | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| INTEGER | [data type] | |
| defined with no parameters | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| NUMERIC | [data type] | |
| defined with PRECISION,SCALE | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| NVARCHAR | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| OTHER | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| REAL | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| SMALLINT | [data type] | |
| defined with no parameters | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| TIME | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| TIMESTAMP | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| TIMESTAMP WITH TIME ZONE | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| TIME WITH TIME ZONE | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable except with where .. like | ||
| TINYINT | [data type] | |
| defined with no parameters | ||
| nullable | ||
| auto-incrementable | ||
| searchable except with where .. like | ||
| UUID | [data type] | |
| defined with no parameters | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| VARBINARY | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| VARCHAR | [data type] | |
| defined with LENGTH | ||
| nullable | ||
| not auto-incrementable | ||
| searchable | ||
| PUBLIC.BOOKS.AGE_TYPE | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | SMALLINT | |
| PUBLIC.BOOKS."CHARACTER VARYING" | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| PUBLIC.BOOKS."INTEGER ARRAY" | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| PUBLIC.BOOKS.NAME_TYPE | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| PUBLIC.BOOKS.VALID_STRING | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| PUBLIC.BOOKS."VARCHAR(20) ARRAY[10]" | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| PUBLIC.SYSTEM_LOBS."BIGINT ARRAY" | [user defined data type] | |
| defined with no parameters | ||
| not nullable | ||
| not auto-incrementable | ||
| not searchable | ||
| based on | ||
| database product name | HSQL Database Engine |
| database product version | 2.7.3 |
| database user name | SA |
| all procedures are callable | true |
| all tables are selectable | true |
| auto commit failure closes all result sets | false |
| catalog separator | . |
| catalog term | CATALOG |
| catalogs | PUBLIC |
| client info properties | allow_empty_batch, check_props, close_result, default_schema, get_column_name, memory_lobs |
| data definition causes transaction commit | true |
| data definition ignored in transactions | false |
| database major version | 2 |
| database minor version | 7 |
| default transaction isolation | 2 |
| deletes are detected for TYPE_FORWARD_ONLY result sets | false |
| deletes are detected for TYPE_SCROLL_INSENSITIVE result sets | false |
| deletes are detected for TYPE_SCROLL_SENSITIVE result sets | false |
| does max row size include blobs | true |
| driver major version | 2 |
| driver minor version | 7 |
| extra name characters | |
| generated key always returned | true |
| identifier quote string | " |
| inserts are detected for TYPE_FORWARD_ONLY result sets | false |
| inserts are detected for TYPE_SCROLL_INSENSITIVE result sets | false |
| inserts are detected for TYPE_SCROLL_SENSITIVE result sets | false |
| is catalog at start | true |
| is read only | false |
| JDBC major version | 4 |
| JDBC minor version | 2 |
| locators update copy | false |
| max binary literal length | 0 |
| max catalog name length | 128 |
| max char literal length | 0 |
| max column name length | 128 |
| max columns in group by | 0 |
| max columns in index | 0 |
| max columns in order by | 0 |
| max columns in select | 0 |
| max columns in table | 0 |
| max connections | 0 |
| max cursor name length | 128 |
| max index length | 0 |
| max logical lob size | 1099511627776 |
| max procedure name length | 128 |
| max row size | 0 |
| max schema name length | 128 |
| max statement length | 0 |
| max statements | 0 |
| max table name length | 128 |
| max tables in select | 0 |
| max user name length | 128 |
| null plus non null is null | true |
| nulls are sorted at end | false |
| nulls are sorted at start | true |
| nulls are sorted high | false |
| nulls are sorted low | false |
| numeric functions | ABS, ACOS, ASIN, ATAN, ATAN2, BITAND, BITOR, BITXOR, CEILING, COS, COT, DEGREES, EXP, FLOOR, LOG, LOG10, MOD, PI, POWER, RADIANS, RAND, ROUND, ROUNDMAGIC, SIGN, SIN, SQRT, TAN, TRUNCATE |
| others deletes are visible for TYPE_FORWARD_ONLY result sets | false |
| others deletes are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| others deletes are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| others inserts are visible for TYPE_FORWARD_ONLY result sets | false |
| others inserts are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| others inserts are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| others updates are visible for TYPE_FORWARD_ONLY result sets | false |
| others updates are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| others updates are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| own deletes are visible for TYPE_FORWARD_ONLY result sets | false |
| own deletes are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| own deletes are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| own inserts are visible for TYPE_FORWARD_ONLY result sets | false |
| own inserts are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| own inserts are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| own updates are visible for TYPE_FORWARD_ONLY result sets | false |
| own updates are visible for TYPE_SCROLL_INSENSITIVE result sets | false |
| own updates are visible for TYPE_SCROLL_SENSITIVE result sets | false |
| procedure term | PROCEDURE |
| result set holdability | 1 |
| row id lifetime | ROWID_UNSUPPORTED |
| schema term | SCHEMA |
| schemas | BOOKS, FOR_LINT, INFORMATION_SCHEMA, PUBLIC, PUBLISHER SALES, SYSTEM_LOBS |
| search string escape | \ |
| SQL keywords | |
| SQL state type | 2 |
| stores lower case identifiers | false |
| stores lower case quoted identifiers | false |
| stores mixed case identifiers | false |
| stores mixed case quoted identifiers | false |
| stores upper case identifiers | true |
| stores upper case quoted identifiers | false |
| string functions | ASCII, CHAR, CONCAT, DIFFERENCE, HEXTORAW, INSERT, LCASE, LEFT, LENGTH, LOCATE, LTRIM, RAWTOHEX, REPEAT, REPLACE, RIGHT, RTRIM, SOUNDEX, SPACE, SUBSTR, UCASE |
| supports alter table with add column | true |
| supports alter table with drop column | true |
| supports ANSI92 entry level SQL | true |
| supports ANSI92 full SQL | true |
| supports ANSI92 intermediate SQL | true |
| supports batch updates | true |
| supports catalogs in data manipulation | true |
| supports catalogs in index definitions | true |
| supports catalogs in privilege definitions | true |
| supports catalogs in procedure calls | true |
| supports catalogs in table definitions | true |
| supports column aliasing | true |
| supports convert | true |
| supports core SQL grammar | true |
| supports correlated subqueries | true |
| supports data definition and data manipulation transactions | false |
| supports data manipulation transactions only | true |
| supports different table correlation names | false |
| supports expressions in order by | true |
| supports extended SQL grammar | true |
| supports full outer joins | true |
| supports get generated keys | true |
| supports group by | true |
| supports group by beyond select | true |
| supports group by unrelated | true |
| supports integrity enhancement facility | true |
| supports like escape clause | true |
| supports limited outer joins | true |
| supports minimum SQL grammar | true |
| supports mixed case identifiers | false |
| supports mixed case quoted identifiers | true |
| supports multiple open results | true |
| supports multiple result sets | true |
| supports multiple transactions | true |
| supports named parameters | true |
| supports non nullable columns | true |
| supports open cursors across commit | true |
| supports open cursors across rollback | false |
| supports open statements across commit | true |
| supports open statements across rollback | true |
| supports order by unrelated | true |
| supports outer joins | true |
| supports positioned delete | true |
| supports positioned update | true |
| supports ref cursors | false |
| supports result set type for TYPE_FORWARD_ONLY result sets | true |
| supports result set type for TYPE_SCROLL_INSENSITIVE result sets | true |
| supports result set type for TYPE_SCROLL_SENSITIVE result sets | false |
| supports savepoints | true |
| supports schemas in data manipulation | true |
| supports schemas in index definitions | true |
| supports schemas in privilege definitions | true |
| supports schemas in procedure calls | true |
| supports schemas in table definitions | true |
| supports select for update | true |
| supports sharding | false |
| supports statement pooling | true |
| supports stored functions using call syntax | true |
| supports stored procedures | true |
| supports subqueries in comparisons | true |
| supports subqueries in exists | true |
| supports subqueries in ins | true |
| supports subqueries in quantifieds | true |
| supports table correlation names | true |
| supports transactions | true |
| supports union | true |
| supports union all | true |
| system functions | DATABASE, IFNULL, USER |
| table types | GLOBAL TEMPORARY, SYSTEM TABLE, TABLE, VIEW |
| time date functions | CURDATE, CURTIME, DATEDIFF, DAYNAME, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, HOUR, MINUTE, MONTH, MONTHNAME, NOW, QUARTER, SECOND, SECONDS_SINCE_MIDNIGHT, TIMESTAMPADD, TIMESTAMPDIFF, TO_CHAR, WEEK, YEAR |
| type info | BIGINT, BINARY, BIT, BLOB, BOOLEAN, CHARACTER, CLOB, DATE, DECIMAL, DOUBLE, FLOAT, INTEGER, NUMERIC, NVARCHAR, OTHER, REAL, SMALLINT, TIME, TIME WITH TIME ZONE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, TINYINT, UUID, VARBINARY, VARCHAR |
| updates are detected for TYPE_FORWARD_ONLY result sets | false |
| updates are detected for TYPE_SCROLL_INSENSITIVE result sets | false |
| updates are detected for TYPE_SCROLL_SENSITIVE result sets | false |
| uses local file per table | false |
| uses local files | false |
| connection url | jdbc:hsqldb:hsql://0.0.0.0:61558/schemacrawler61558 |
| driver name | HSQL Database Engine Driver |
| driver version | 2.7.3 |
| driver class name | org.hsqldb.jdbc.JDBCDriver |
| is JDBC compliant | true |
| supported JDBC version | 4.2 |
| default_schema | [driver property] | |
| not required; choices [false, true] | ||
| value | false | |
| get_column_name | [driver property] | |
| not required; choices [false, true] | ||
| value | true | |
| ifexists | [driver property] | |
| not required; choices [false, true] | ||
| value | false | |
| password | [driver property] | |
| required | ||
| value | null | |
| shutdown | [driver property] | |
| not required; choices [false, true] | ||
| value | false | |
| user | [driver property] | |
| required | ||
| value | null | |