You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

253 lines
6.5 KiB
SQL

-- phpMyAdmin SQL Dump
-- version 5.1.1deb5ubuntu1
-- https://www.phpmyadmin.net/
--
-- Host: localhost:3306
-- Generation Time: Oct 24, 2025 at 10:36 AM
-- Server version: 10.6.22-MariaDB-ubu2204-log
-- PHP Version: 8.2.28
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: `hedgehogs`
--
-- --------------------------------------------------------
--
-- Table structure for table `email_verifications`
--
CREATE TABLE `email_verifications` (
`id` bigint(20) UNSIGNED NOT NULL,
`user_id` bigint(20) UNSIGNED NOT NULL,
`token` varchar(255) NOT NULL,
`expires_at` datetime NOT NULL,
`sent_at` datetime NOT NULL DEFAULT current_timestamp(),
`used_at` datetime DEFAULT NULL,
`ip` varchar(64) DEFAULT NULL,
`user_agent` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `igel`
--
CREATE TABLE `igel` (
`id` bigint(20) UNSIGNED NOT NULL,
`user_id` bigint(20) UNSIGNED NOT NULL,
`name` varchar(120) NOT NULL,
`gender` varchar(10) DEFAULT NULL,
`note` text DEFAULT NULL,
`feature` text DEFAULT NULL,
`rescued_at` date DEFAULT NULL,
`location` varchar(255) DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp(),
`updated_at` timestamp NULL DEFAULT NULL ON UPDATE current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `igel_images`
--
CREATE TABLE `igel_images` (
`id` bigint(20) UNSIGNED NOT NULL,
`igel_id` bigint(20) UNSIGNED NOT NULL,
`url` varchar(500) NOT NULL,
`thumb_url` varchar(500) DEFAULT NULL,
`original_name` varchar(255) DEFAULT NULL,
`mime` varchar(100) DEFAULT NULL,
`size_bytes` bigint(20) UNSIGNED DEFAULT NULL,
`taken_at` datetime DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `messwerte`
--
CREATE TABLE `messwerte` (
`id` bigint(20) UNSIGNED NOT NULL,
`igel_id` bigint(20) UNSIGNED NOT NULL,
`datum` datetime NOT NULL,
`gewicht` int(10) UNSIGNED NOT NULL,
`behandlung` varchar(255) DEFAULT NULL,
`bemerkung` text DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `refresh_tokens`
--
CREATE TABLE `refresh_tokens` (
`id` bigint(20) UNSIGNED NOT NULL,
`user_id` bigint(20) UNSIGNED NOT NULL,
`token` varchar(255) NOT NULL,
`expires_at` datetime NOT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `users`
--
CREATE TABLE `users` (
`id` bigint(20) UNSIGNED NOT NULL,
`email` varchar(191) NOT NULL,
`password_hash` varchar(255) NOT NULL,
`verified_at` datetime DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Indexes for dumped tables
--
--
-- Indexes for table `email_verifications`
--
ALTER TABLE `email_verifications`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `token` (`token`),
ADD KEY `user_id` (`user_id`),
ADD KEY `token_2` (`token`);
--
-- Indexes for table `igel`
--
ALTER TABLE `igel`
ADD PRIMARY KEY (`id`),
ADD KEY `user_id` (`user_id`),
ADD KEY `name` (`name`);
--
-- Indexes for table `igel_images`
--
ALTER TABLE `igel_images`
ADD PRIMARY KEY (`id`),
ADD KEY `igel_id` (`igel_id`),
ADD KEY `idx_igel_images_taken_at` (`taken_at`);
--
-- Indexes for table `messwerte`
--
ALTER TABLE `messwerte`
ADD PRIMARY KEY (`id`),
ADD KEY `igel_id` (`igel_id`),
ADD KEY `datum` (`datum`);
--
-- Indexes for table `refresh_tokens`
--
ALTER TABLE `refresh_tokens`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `token` (`token`),
ADD KEY `user_id` (`user_id`),
ADD KEY `token_2` (`token`);
--
-- Indexes for table `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `email` (`email`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `email_verifications`
--
ALTER TABLE `email_verifications`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `igel`
--
ALTER TABLE `igel`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `igel_images`
--
ALTER TABLE `igel_images`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `messwerte`
--
ALTER TABLE `messwerte`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `refresh_tokens`
--
ALTER TABLE `refresh_tokens`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `users`
--
ALTER TABLE `users`
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- Constraints for dumped tables
--
--
-- Constraints for table `email_verifications`
--
ALTER TABLE `email_verifications`
ADD CONSTRAINT `email_verifications_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE;
--
-- Constraints for table `igel`
--
ALTER TABLE `igel`
ADD CONSTRAINT `igel_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE;
--
-- Constraints for table `igel_images`
--
ALTER TABLE `igel_images`
ADD CONSTRAINT `igel_images_ibfk_1` FOREIGN KEY (`igel_id`) REFERENCES `igel` (`id`) ON DELETE CASCADE;
--
-- Constraints for table `messwerte`
--
ALTER TABLE `messwerte`
ADD CONSTRAINT `messwerte_ibfk_1` FOREIGN KEY (`igel_id`) REFERENCES `igel` (`id`) ON DELETE CASCADE;
--
-- Constraints for table `refresh_tokens`
--
ALTER TABLE `refresh_tokens`
ADD CONSTRAINT `refresh_tokens_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE 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 */;