-- phpMyAdmin SQL Dump
-- version 5.2.3
-- https://www.phpmyadmin.net/
--
-- Host: localhost:3306
-- Generation Time: Sep 29, 2026 at 12:15 PM
-- Server version: 5.7.44
-- PHP Version: 8.1.34

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `amioanno_schedule`
--

-- --------------------------------------------------------

--
-- Table structure for table `courses`
--

CREATE TABLE `courses` (
  `course_id` int(10) UNSIGNED NOT NULL,
  `course_code` varchar(20) NOT NULL,
  `course_name` varchar(150) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `courses`
--

INSERT INTO `courses` (`course_id`, `course_code`, `course_name`) VALUES
(1, 'ACAD 191', 'Python for Machine Intelligence'),
(2, 'ACAD 276', 'Dev II'),
(3, 'ACAD 376', 'Industry Practicum I: Designing and Implementing Real-World Solutions'),
(4, 'ACAD 475A', 'The Garage Experience'),
(5, 'IDSN 599', 'Special Topics: Product Management for Challenge-Based Innovation');

-- --------------------------------------------------------

--
-- Table structure for table `locations`
--

CREATE TABLE `locations` (
  `location_id` int(10) UNSIGNED NOT NULL,
  `location_name` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `locations`
--

INSERT INTO `locations` (`location_id`, `location_name`) VALUES
(1, 'IYH210/211'),
(2, 'THH202'),
(3, 'Online');

-- --------------------------------------------------------

--
-- Table structure for table `meetings`
--

CREATE TABLE `meetings` (
  `meeting_id` int(10) UNSIGNED NOT NULL,
  `meeting_date` date NOT NULL,
  `start_time` time NOT NULL,
  `end_time` time NOT NULL,
  `course_id` int(10) UNSIGNED NOT NULL,
  `location_id` int(10) UNSIGNED NOT NULL,
  `meeting_type_id` int(10) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `meetings`
--

INSERT INTO `meetings` (`meeting_id`, `meeting_date`, `start_time`, `end_time`, `course_id`, `location_id`, `meeting_type_id`) VALUES
(1, '2026-09-14', '14:00:00', '15:50:00', 4, 1, 1),
(2, '2026-09-14', '18:00:00', '19:50:00', 5, 3, 1),
(3, '2026-09-15', '12:00:00', '13:50:00', 2, 1, 3),
(4, '2026-09-16', '10:00:00', '11:50:00', 1, 1, 3),
(5, '2026-09-16', '12:00:00', '13:50:00', 3, 2, 1),
(6, '2026-09-16', '14:00:00', '15:50:00', 4, 1, 1),
(7, '2026-09-16', '18:00:00', '19:50:00', 5, 3, 1),
(8, '2026-09-17', '12:00:00', '13:50:00', 2, 1, 3),
(9, '2026-09-18', '12:00:00', '13:50:00', 3, 2, 1),
(10, '2026-09-21', '14:00:00', '15:50:00', 4, 1, 1),
(11, '2026-09-21', '18:00:00', '19:50:00', 5, 3, 1),
(12, '2026-09-22', '12:00:00', '13:50:00', 2, 1, 3),
(13, '2026-09-23', '10:00:00', '11:50:00', 1, 1, 3),
(14, '2026-09-23', '12:00:00', '13:50:00', 3, 2, 1),
(15, '2026-09-23', '14:00:00', '15:50:00', 4, 1, 1),
(16, '2026-09-23', '18:00:00', '19:50:00', 5, 3, 1),
(17, '2026-09-24', '12:00:00', '13:50:00', 2, 1, 3),
(18, '2026-09-25', '12:00:00', '13:50:00', 3, 2, 1),
(19, '2026-09-28', '14:00:00', '15:50:00', 4, 1, 1),
(20, '2026-09-28', '18:00:00', '19:50:00', 5, 3, 1),
(21, '2026-09-29', '12:00:00', '13:50:00', 2, 1, 3),
(22, '2026-09-30', '10:00:00', '11:50:00', 1, 1, 3),
(23, '2026-09-30', '12:00:00', '13:50:00', 3, 2, 1),
(24, '2026-09-30', '14:00:00', '15:50:00', 4, 1, 1),
(25, '2026-09-30', '18:00:00', '19:50:00', 5, 3, 1),
(26, '2026-10-01', '12:00:00', '13:50:00', 2, 1, 3),
(27, '2026-10-02', '12:00:00', '13:50:00', 3, 2, 1),
(28, '2026-10-05', '14:00:00', '15:50:00', 4, 1, 1),
(29, '2026-10-05', '18:00:00', '19:50:00', 5, 3, 1),
(30, '2026-10-06', '12:00:00', '13:50:00', 2, 1, 3),
(31, '2026-10-07', '10:00:00', '11:50:00', 1, 1, 3),
(32, '2026-10-07', '12:00:00', '13:50:00', 3, 2, 1),
(33, '2026-10-07', '14:00:00', '15:50:00', 4, 1, 1),
(34, '2026-10-07', '18:00:00', '19:50:00', 5, 3, 1),
(35, '2026-10-12', '14:00:00', '15:50:00', 4, 1, 1),
(36, '2026-10-12', '18:00:00', '19:50:00', 5, 3, 1),
(37, '2026-10-13', '12:00:00', '13:50:00', 2, 1, 3),
(38, '2026-10-14', '10:00:00', '11:50:00', 1, 1, 3),
(39, '2026-10-14', '12:00:00', '13:50:00', 3, 2, 1),
(40, '2026-10-14', '14:00:00', '15:50:00', 4, 1, 1),
(41, '2026-10-14', '18:00:00', '19:50:00', 5, 3, 1),
(42, '2026-10-15', '12:00:00', '13:50:00', 2, 1, 3),
(43, '2026-10-16', '12:00:00', '13:50:00', 3, 2, 1);

-- --------------------------------------------------------

--
-- Table structure for table `meeting_types`
--

CREATE TABLE `meeting_types` (
  `meeting_type_id` int(10) UNSIGNED NOT NULL,
  `meeting_type_name` varchar(30) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `meeting_types`
--

INSERT INTO `meeting_types` (`meeting_type_id`, `meeting_type_name`) VALUES
(1, 'Lecture'),
(2, 'Lab'),
(3, 'Lecture/Lab');

-- --------------------------------------------------------

--
-- Stand-in structure for view `schedule_view`
-- (See below for the actual view)
--
CREATE TABLE `schedule_view` (
`meeting_date` date
,`start_time` time
,`end_time` time
,`location` varchar(50)
,`meeting_type` varchar(30)
,`class_name` varchar(172)
);

-- --------------------------------------------------------

--
-- Stand-in structure for view `schedule_view_04b`
-- (See below for the actual view)
--
CREATE TABLE `schedule_view_04b` (
`meeting_id` int(10) unsigned
,`meeting_date` date
,`start_time` time
,`end_time` time
,`course_id` int(10) unsigned
,`location_id` int(10) unsigned
,`meeting_type_id` int(10) unsigned
,`course_code` varchar(20)
,`course_name` varchar(150)
,`location_name` varchar(50)
,`meeting_type_name` varchar(30)
);

--
-- Indexes for dumped tables
--

--
-- Indexes for table `courses`
--
ALTER TABLE `courses`
  ADD PRIMARY KEY (`course_id`);

--
-- Indexes for table `locations`
--
ALTER TABLE `locations`
  ADD PRIMARY KEY (`location_id`);

--
-- Indexes for table `meetings`
--
ALTER TABLE `meetings`
  ADD PRIMARY KEY (`meeting_id`),
  ADD KEY `course_id` (`course_id`),
  ADD KEY `location_id` (`location_id`),
  ADD KEY `meeting_type_id` (`meeting_type_id`);

--
-- Indexes for table `meeting_types`
--
ALTER TABLE `meeting_types`
  ADD PRIMARY KEY (`meeting_type_id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `courses`
--
ALTER TABLE `courses`
  MODIFY `course_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT for table `locations`
--
ALTER TABLE `locations`
  MODIFY `location_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT for table `meetings`
--
ALTER TABLE `meetings`
  MODIFY `meeting_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=44;

--
-- AUTO_INCREMENT for table `meeting_types`
--
ALTER TABLE `meeting_types`
  MODIFY `meeting_type_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

-- --------------------------------------------------------

--
-- Structure for view `schedule_view`
--
DROP TABLE IF EXISTS `schedule_view`;

CREATE ALGORITHM=UNDEFINED DEFINER=`amioanno`@`localhost` SQL SECURITY DEFINER VIEW `schedule_view`  AS SELECT `m`.`meeting_date` AS `meeting_date`, `m`.`start_time` AS `start_time`, `m`.`end_time` AS `end_time`, `l`.`location_name` AS `location`, `mt`.`meeting_type_name` AS `meeting_type`, concat(`c`.`course_code`,': ',`c`.`course_name`) AS `class_name` FROM (((`meetings` `m` join `courses` `c` on((`m`.`course_id` = `c`.`course_id`))) join `locations` `l` on((`m`.`location_id` = `l`.`location_id`))) join `meeting_types` `mt` on((`m`.`meeting_type_id` = `mt`.`meeting_type_id`))) ORDER BY `m`.`meeting_date` ASC, `m`.`start_time` ASC ;

-- --------------------------------------------------------

--
-- Structure for view `schedule_view_04b`
--
DROP TABLE IF EXISTS `schedule_view_04b`;

CREATE ALGORITHM=UNDEFINED DEFINER=`amioanno`@`localhost` SQL SECURITY DEFINER VIEW `schedule_view_04b`  AS SELECT `meetings`.`meeting_id` AS `meeting_id`, `meetings`.`meeting_date` AS `meeting_date`, `meetings`.`start_time` AS `start_time`, `meetings`.`end_time` AS `end_time`, `meetings`.`course_id` AS `course_id`, `meetings`.`location_id` AS `location_id`, `meetings`.`meeting_type_id` AS `meeting_type_id`, `courses`.`course_code` AS `course_code`, `courses`.`course_name` AS `course_name`, `locations`.`location_name` AS `location_name`, `meeting_types`.`meeting_type_name` AS `meeting_type_name` FROM (((`meetings` join `courses`) join `locations`) join `meeting_types`) WHERE ((`meetings`.`course_id` = `courses`.`course_id`) AND (`meetings`.`location_id` = `locations`.`location_id`) AND (`meetings`.`meeting_type_id` = `meeting_types`.`meeting_type_id`)) ;

--
-- Constraints for dumped tables
--

--
-- Constraints for table `meetings`
--
ALTER TABLE `meetings`
  ADD CONSTRAINT `fk_meetings_course` FOREIGN KEY (`course_id`) REFERENCES `courses` (`course_id`) ON UPDATE CASCADE,
  ADD CONSTRAINT `fk_meetings_location` FOREIGN KEY (`location_id`) REFERENCES `locations` (`location_id`) ON UPDATE CASCADE,
  ADD CONSTRAINT `fk_meetings_type` FOREIGN KEY (`meeting_type_id`) REFERENCES `meeting_types` (`meeting_type_id`) ON UPDATE CASCADE;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
