Files
praktikum/prisma/schema.prisma

72 lines
1.9 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
generator client {
provider = "prisma-client-js"
binaryTargets = ["darwin-arm64", "linux-arm64-openssl-3.0.x", "debian-openssl-3.0.x", "linux-musl-openssl-3.0.x"]
output = "../node_modules/.prisma/client"
}
datasource db {
provider = "sqlite"
url = "file:./praktika.db"
}
model Admin {
id Int @id @default(1)
password String
}
model Dienststelle {
id Int @id @default(autoincrement())
name String @unique
plaetze Int
anmeldungenWunsch1 Anmeldung[] @relation("Wunsch1")
anmeldungenWunsch2 Anmeldung[] @relation("Wunsch2")
anmeldungenWunsch3 Anmeldung[] @relation("Wunsch3")
}
model Praktikumszeitraum {
id Int @id @default(autoincrement())
bezeichnung String @unique // z.B. "Frühjahr 2025"
startDatum DateTime
endDatum DateTime
anmeldungen Anmeldung[]
}
model Anmeldung {
id Int @id @default(autoincrement())
anrede String
vorname String
nachname String
geburtsdatum String
strasse String
hausnummer String
ort String
plz String
telefon String
email String @unique
schulart String
motivation String
praktikumId Int
praktikum Praktikumszeitraum @relation(fields: [praktikumId], references: [id])
wunsch1Id Int
wunsch2Id Int
wunsch3Id Int
wunsch1 Dienststelle @relation("Wunsch1", fields: [wunsch1Id], references: [id])
wunsch2 Dienststelle @relation("Wunsch2", fields: [wunsch2Id], references: [id])
wunsch3 Dienststelle @relation("Wunsch3", fields: [wunsch3Id], references: [id])
timestamp DateTime @default(now())
pdfs PdfDatei[] @relation("AnmeldungPdfs")
}
model PdfDatei {
id Int @id @default(autoincrement())
pfad String
anmeldung Anmeldung @relation("AnmeldungPdfs", fields: [anmeldungId], references: [id])
anmeldungId Int
}