github.com/readium/readium-lcp-server@v0.0.0-20240509124024-799e77a0bbd6/dbmodel/mysql_db_setup_frontend.sql (about)

     1  CREATE TABLE `publication` (
     2      `id` int(11) PRIMARY KEY AUTO_INCREMENT,
     3      `uuid` varchar(255) NOT NULL,	/* == content id */
     4      `title` varchar(255) NOT NULL,
     5      `status` varchar(255) NOT NULL
     6  );
     7  
     8  CREATE INDEX uuid_index ON publication (`uuid`);
     9  
    10  CREATE TABLE `user` (
    11      `id` int(11) PRIMARY KEY AUTO_INCREMENT,
    12      `uuid` varchar(255) NOT NULL,
    13      `name` varchar(64) NOT NULL,
    14      `email` varchar(64) NOT NULL,
    15      `password` varchar(64) NOT NULL,
    16      `hint` varchar(64) NOT NULL
    17  );
    18  
    19  CREATE TABLE `purchase` (
    20      `id` int(11) PRIMARY KEY AUTO_INCREMENT,
    21      `uuid` varchar(255) NOT NULL,
    22      `publication_id` int(11) NOT NULL,
    23      `user_id` int(11) NOT NULL,
    24      `license_uuid` varchar(255) NULL,
    25      `type` varchar(32) NOT NULL,
    26      `transaction_date` datetime,
    27      `start_date` datetime,
    28      `end_date` datetime,
    29      `status` varchar(255) NOT NULL,
    30      FOREIGN KEY (`publication_id`) REFERENCES `publication` (`id`),
    31      FOREIGN KEY (`user_id`) REFERENCES `user` (`id`)
    32  );
    33  
    34  CREATE INDEX `idx_purchase` ON `purchase` (`license_uuid`);
    35  
    36  CREATE TABLE `license_view` (
    37      `id` int(11) PRIMARY KEY AUTO_INCREMENT,
    38      `uuid` varchar(255) NOT NULL,
    39      `device_count` int(11) NOT NULL,
    40      `status` varchar(255) NOT NULL,
    41      `message` varchar(255) NOT NULL
    42  );