Datenbank

Datenbank Seeding

Testdaten automatisch generieren statt manuell tippen

Jedes Mal manuell Testdaten eingeben ist Zeitverschwendung. Ein Seed-Script fuellt deine Datenbank mit realistischen Testdaten auf Knopfdruck. Beim Entwickeln, Testen und Demos sparst du dir Stunden.

Pro-Tip — Der schnelle Weg
Nutz Faker.js fuer realistische Testdaten. Namen, Adressen, E-Mails, Produkte, alles automatisch generiert und es sieht aus wie echte Daten.
Seite 1
1

Faker installieren

Faker.js generiert realistische Fake-Daten in ueber 50 Sprachen. Deutsche Namen, Adressen, Telefonnummern, alles dabei.

npm install -D @faker-js/faker
2

Seed-Script erstellen

Erstell eine seed.ts Datei die deine Datenbank mit Testdaten fuellt. Starte mit den Tabellen die keine Abhaengigkeiten haben und arbeite dich nach oben.

import { faker } from '@faker-js/faker/locale/de'
import { db } from './db'
import { users, posts } from './schema'


async function seed() {
const createdUsers = await db.insert(users).values(
Array.from({ length: 50 }, () => ({
name: faker.person.fullName(),
email: faker.internet.email()
}))
).returning()
console.log(`${createdUsers.length} Users erstellt`)
}
3

Relationen beruecksichtigen

Erstell zuerst die Haupt-Eintraege, dann die abhaengigen. Nutze die zurueckgegebenen IDs um realistische Beziehungen zwischen den Daten herzustellen.

for (const user of createdUsers) {
await db.insert(posts).values(
Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, () => ({
title: faker.lorem.sentence(),
body: faker.lorem.paragraphs(3),
authorId: user.id
}))
)
}
4

NPM-Script einrichten

Fueg einen seed-Befehl in deine package.json ein. So kann jeder im Team mit einem Befehl die Datenbank fuellen.

// package.json
"scripts": {
"db:seed": "tsx prisma/seed.ts"
}


// Ausfuehren mit:
npm run db:seed
Seite 2
Warum das funktioniert
  • Realistische Testdaten zeigen Bugs die mit leerer DB unsichtbar sind
  • Jeder im Team hat den gleichen Datenstand
  • Demos sehen professionell aus mit echten Fake-Daten
  • Ein Befehl statt manuell klicken spart Stunden pro Woche
Tipps
  • Loesch bestehende Daten am Anfang des Seeds mit DELETE FROM
  • Erstell verschiedene Seed-Szenarien: minimal, voll, edge-cases
  • Nutz eine feste Faker-Seed-Nummer fuer reproduzierbare Daten
  • Seed-Scripts sind perfekt fuer Demo-Umgebungen
Seite 3
Bereit für den nächsten Schritt?

KIWorld VibeCoding Masterclass

Du willst nicht nur einzelne Tools einrichten, sondern wirklich lernen wie du mit KI komplette Apps, Websites und SaaS-Produkte baust? Über 700 Videos — von Anfänger bis Fortgeschritten — in jedem Bereich. Von der Idee bis zum fertigen Produkt, ohne eine Zeile Code selbst zu schreiben.

Jetzt Masterclass ansehen