UNPKG

@dbml/cli

Version:

See our website [@dbml/cli](https://dbml.dbdiagram.io/cli/) for more information

63 lines (48 loc) 1.64 kB
CREATE TABLE `orders` ( `id` int PRIMARY KEY AUTO_INCREMENT, `user_id` int UNIQUE NOT NULL, `status` ENUM ('created', 'running', 'done', 'failure'), `created_at` varchar(255) ); CREATE TABLE `order_items` ( `order_id` int, `product_id` int, `quantity` int DEFAULT 1 ); CREATE TABLE `products` ( `id` int PRIMARY KEY, `name` varchar(255), `merchant_id` int NOT NULL, `price` int, `status` ENUM ('Out of Stock', 'In Stock'), `created_at` datetime DEFAULT (now()) ); CREATE TABLE `users` ( `id` int PRIMARY KEY, `full_name` varchar(255), `email` varchar(255) UNIQUE, `gender` varchar(255), `date_of_birth` varchar(255), `created_at` varchar(255), `country_code` int ); CREATE TABLE `merchants` ( `id` int PRIMARY KEY, `merchant_name` varchar(255), `country_code` int, `created_at` varchar(255), `admin_id` int ); CREATE TABLE `countries` ( `code` int PRIMARY KEY, `name` varchar(255), `continent_name` varchar(255) ); CREATE INDEX `product_status` ON `products` (`merchant_id`, `status`); CREATE UNIQUE INDEX `products_index_1` ON `products` (`id`) USING HASH; ALTER TABLE `order_items` ADD FOREIGN KEY (`order_id`) REFERENCES `orders` (`id`); ALTER TABLE `order_items` ADD FOREIGN KEY (`product_id`) REFERENCES `products` (`id`); ALTER TABLE `users` ADD FOREIGN KEY (`country_code`) REFERENCES `countries` (`code`); ALTER TABLE `merchants` ADD FOREIGN KEY (`country_code`) REFERENCES `countries` (`code`); ALTER TABLE `products` ADD FOREIGN KEY (`merchant_id`) REFERENCES `merchants` (`id`); ALTER TABLE `merchants` ADD FOREIGN KEY (`admin_id`) REFERENCES `users` (`id`);