33 lines
1.4 KiB
SQL
33 lines
1.4 KiB
SQL
-- Table structure for table `staff`
|
|
CREATE TABLE IF NOT EXISTS `staff` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`name` varchar(100) NOT NULL,
|
|
`phone` varchar(20) DEFAULT NULL,
|
|
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
-- Insert initial staff data
|
|
INSERT INTO `staff` (`id`, `name`, `phone`) VALUES
|
|
(1, 'นางจิตติมา', '08X-XXX-4451'),
|
|
(2, 'นายพงษ์ศักดิ์', '08X-XXX-5514'),
|
|
(3, 'นางสาวกานต์', '08X-XXX-9616'),
|
|
(4, 'นายประวิทย์', '08X-XXX-0935'),
|
|
(5, 'นางพรพิมล', '08X-XXX-9731')
|
|
ON DUPLICATE KEY UPDATE `name`=VALUES(`name`), `phone`=VALUES(`phone`);
|
|
|
|
-- Table structure for table `schedules`
|
|
CREATE TABLE IF NOT EXISTS `schedules` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`staff_id` int(11) NOT NULL,
|
|
`year` int(4) NOT NULL,
|
|
`month` int(2) NOT NULL,
|
|
`day` int(2) NOT NULL,
|
|
`shift_type` varchar(10) NOT NULL,
|
|
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `unique_schedule` (`staff_id`,`year`,`month`,`day`),
|
|
CONSTRAINT `fk_schedules_staff` FOREIGN KEY (`staff_id`) REFERENCES `staff` (`id`) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|