41 lines
1.6 KiB
SQL
41 lines
1.6 KiB
SQL
CREATE TABLE `products` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`name` text NOT NULL,
|
|
`brand` text NOT NULL,
|
|
`category` text NOT NULL,
|
|
`distributor_id` integer,
|
|
`unit_id` integer NOT NULL,
|
|
`procured_price` real NOT NULL,
|
|
`mrp` real NOT NULL,
|
|
`selling_price` real NOT NULL,
|
|
`quantity` integer DEFAULT 0 NOT NULL,
|
|
`reorder_level` integer DEFAULT 0 NOT NULL,
|
|
`units_per_strip` integer,
|
|
`hide_product_from_public` integer DEFAULT false NOT NULL,
|
|
`hide_price_from_public` integer DEFAULT false NOT NULL,
|
|
FOREIGN KEY (`distributor_id`) REFERENCES `distributors`(`id`) ON UPDATE no action ON DELETE no action,
|
|
FOREIGN KEY (`unit_id`) REFERENCES `units`(`id`) ON UPDATE no action ON DELETE no action
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE `drug_info` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`name` text NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `drug_info_name_unique` ON `drug_info` (`name`);--> statement-breakpoint
|
|
CREATE TABLE `units` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`name` text NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `units_name_unique` ON `units` (`name`);--> statement-breakpoint
|
|
CREATE TABLE `product_compositions` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`product_id` integer NOT NULL,
|
|
`drug_info_id` integer NOT NULL,
|
|
`quantity` text NOT NULL,
|
|
`unit_id` integer NOT NULL,
|
|
FOREIGN KEY (`product_id`) REFERENCES `products`(`id`) ON UPDATE no action ON DELETE no action,
|
|
FOREIGN KEY (`drug_info_id`) REFERENCES `drug_info`(`id`) ON UPDATE no action ON DELETE no action,
|
|
FOREIGN KEY (`unit_id`) REFERENCES `units`(`id`) ON UPDATE no action ON DELETE no action
|
|
);
|