Skip to content

Commit

Permalink
dir/ecommerce: add checkpoint file (#40)
Browse files Browse the repository at this point in the history
  • Loading branch information
hilakashai authored Sep 6, 2023
1 parent 9b0df86 commit 68c9622
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
22 changes: 22 additions & 0 deletions dirs/ecommerce/migrations/20230906125835_checkpoint.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
-- atlas:checkpoint

-- Create "users" table
CREATE TABLE `users` (`id` int NOT NULL, `user_name` varchar(255) NOT NULL, `email` varchar(255) NOT NULL, PRIMARY KEY (`id`)) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "categories" table
CREATE TABLE `categories` (`id` int NOT NULL, `category_name` varchar(255) NOT NULL, PRIMARY KEY (`id`)) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "products" table
CREATE TABLE `products` (`id` int NOT NULL, `product_name` varchar(255) NOT NULL, `price` decimal(10,2) NOT NULL, `category_id` int NULL, PRIMARY KEY (`id`), INDEX `category_id` (`category_id`), UNIQUE INDEX `product_name` (`product_name`), CONSTRAINT `products_ibfk_1` FOREIGN KEY (`category_id`) REFERENCES `categories` (`id`) ON UPDATE NO ACTION ON DELETE SET NULL) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "product_reviews" table
CREATE TABLE `product_reviews` (`id` int NOT NULL, `product_id` int NOT NULL, `user_id` int NOT NULL, `rating` int NOT NULL, `review_text` text NOT NULL, PRIMARY KEY (`id`), INDEX `product_id` (`product_id`), INDEX `user_id` (`user_id`), CONSTRAINT `product_reviews_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `product_reviews_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "comments" table
CREATE TABLE `comments` (`id` int NOT NULL, `user_id` int NOT NULL, `review_id` int NULL, `parent_comment_id` int NULL, `comment_text` text NOT NULL, PRIMARY KEY (`id`), INDEX `parent_comment_id` (`parent_comment_id`), INDEX `review_id` (`review_id`), INDEX `user_id` (`user_id`), CONSTRAINT `comments_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `comments_ibfk_2` FOREIGN KEY (`review_id`) REFERENCES `product_reviews` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `comments_ibfk_3` FOREIGN KEY (`parent_comment_id`) REFERENCES `comments` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "fulfillment_centers" table
CREATE TABLE `fulfillment_centers` (`id` int NOT NULL, `name` varchar(255) NOT NULL, `location` varchar(255) NOT NULL, PRIMARY KEY (`id`)) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "inventory" table
CREATE TABLE `inventory` (`id` int NOT NULL, `product_id` int NOT NULL, `fulfillment_center_id` int NOT NULL, `quantity` int NOT NULL, PRIMARY KEY (`id`), INDEX `fulfillment_center_id` (`fulfillment_center_id`), INDEX `product_id` (`product_id`), CONSTRAINT `inventory_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `inventory_ibfk_2` FOREIGN KEY (`fulfillment_center_id`) REFERENCES `fulfillment_centers` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "orders" table
CREATE TABLE `orders` (`id` int NOT NULL, `user_id` int NOT NULL, `fulfillment_center_id` int NOT NULL, `total_amount` decimal(10,2) NOT NULL, PRIMARY KEY (`id`), INDEX `fulfillment_center_id` (`fulfillment_center_id`), INDEX `user_id` (`user_id`), CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `orders_ibfk_2` FOREIGN KEY (`fulfillment_center_id`) REFERENCES `fulfillment_centers` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "order_items" table
CREATE TABLE `order_items` (`id` int NOT NULL, `order_id` int NOT NULL, `product_id` int NOT NULL, `quantity` int NOT NULL, `price` decimal(10,2) NOT NULL, PRIMARY KEY (`id`), INDEX `order_id` (`order_id`), INDEX `product_id` (`product_id`), CONSTRAINT `order_items_ibfk_1` FOREIGN KEY (`order_id`) REFERENCES `orders` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE, CONSTRAINT `order_items_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
-- Create "posts" table
CREATE TABLE `posts` (`id` int NOT NULL, `user_id` int NOT NULL, `title` varchar(255) NOT NULL, `body` text NOT NULL, PRIMARY KEY (`id`), INDEX `user_id` (`user_id`), CONSTRAINT `posts_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE NO ACTION ON DELETE CASCADE) CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
3 changes: 2 additions & 1 deletion dirs/ecommerce/migrations/atlas.sum
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
h1:E2qclg9OvcIbWERrcKZxZljz57bKDuqeVAZboLdAVl8=
h1:lLffNdyf0kFcOXtLQf0/xe1dI12l1Su3r/7i0AV1jwU=
20230316085611.sql h1:br6W6LPEnnsejlz/7hRm9zthwStCzjN2vZkqVPxlmvo=
20230316090502.sql h1:GfeRjkSeoCt3JVRtLQNa/r50lRfpAPXS7AqTU2ZNFgY=
20230531091333_products_categories.sql h1:59q2M59dV5dJNv4Lyb2TAJz8V6HekgkLn9z4DoL98jA=
Expand All @@ -9,3 +9,4 @@ h1:E2qclg9OvcIbWERrcKZxZljz57bKDuqeVAZboLdAVl8=
20230531114318_inventory.sql h1:3pPB9okfYVdMyF1m6SFjv0KlGrFAJo0PRX8m9Iu2Shc=
20230531114433_seed_inventory.sql h1:jer7nlqTkkh435CE+LcQhdV6V/KQOVvNnP9/vKVG6KU=
20230531121807_orders.sql h1:RgIzinZdFrWrVCtrqQec/dJQ75tFQaOe+XLAHV5KzYM=
20230906125835_checkpoint.sql h1:jQaO4R0sJQ0ZOPp4Pp7pR2rQ1Cix9gaEaIt2qDomGWQ=

0 comments on commit 68c9622

Please sign in to comment.