Beispiel-Shop-Datenbank: JSON, CSV und PostgreSQL
Ein erfundener Online-Shop mit acht verknüpften Tabellen: categories, products, customers, addresses, orders, order_items, payments und shipments. Beträge stehen in Cent, die Summen jeder Bestellung stimmen mit Positionen, Versand und den Steuersätzen 7 und 19 Prozent überein, und alle Verweise zwischen den Tabellen sind gültig. Es gibt eine kleine und eine mittlere Fassung als JSON, CSV und SQL-Skript für PostgreSQL. Die Dateien stehen unter CC0 1.0.
39 Varianten auf einer Seite, jede mit eigenem Kopier- oder Download-Knopf. Darunter: 39× Fiktiv.
Beispiel-Shop: Schema für PostgreSQL (CREATE TABLE)Fiktiv
-- Sample shop (German flavour, EUR): schema for PostgreSQL. All data is invented; money is stored in cents. -- License: CC0 1.0 Universal (https://creativecommons.org/publicdomain/zero/1.0/) …
Acht Tabellen mit Primär- und Fremdschlüsseln sowie CHECK-Regeln für Steuersätze, Status und Summen. Läuft auch in SQLite.
Beispiel-Shop (klein): Tabellen, Spalten und BeziehungenFiktiv
Sample shop (small, German flavour): 8 tables, money in cents (EUR) Relations …
Überblick über die acht Tabellen mit Zeilenzahl, Spalten und Regeln der Daten (12 Kunden, 24 Bestellungen).
Beispiel-Shop (klein): Schema und Daten als SQL (PostgreSQL)Fiktiv
-- Sample shop (small, German flavour, EUR): schema and data for PostgreSQL. All data is invented. -- License: CC0 1.0 Universal (https://creativecommons.org/publicdomain/zero/1.0/) BEGIN; …
Eine Transaktion mit CREATE TABLE und INSERT für alle Tabellen, in der Reihenfolge der Fremdschlüssel. Beträge in Cent.
Beispiel-Shop (klein): alle Tabellen in einer JSON-DateiFiktiv
{ "categories": [ { …Ein Objekt mit einem Array je Tabelle, geeignet für Seed-Skripte. Beträge in Cent, Verweise gültig.
Beispiel-Shop (klein): categories (Kategorien) als JSONFiktiv
[ { "id": 1, …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): categories (Kategorien) als CSVFiktiv
id,name,slug 1,Office & Stationery,office-stationery 2,Household,household …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): products (Produkte) als JSONFiktiv
[ { "id": "prd_001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): products (Produkte) als CSVFiktiv
id,sku,name,category_id,price_net_cents,tax_rate,stock,active,created_at prd_001,SKU-0001,"Notebook A5, squared",1,420,19,70,true,2025-09-10T08:00:00Z prd_002,SKU-0002,"Ballpoint pens, 10 pack",1,599,19,154,true,2025-09-23T08:00:00Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): customers (Kunden) als JSONFiktiv
[ { "id": "cus_0001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): customers (Kunden) als CSVFiktiv
id,customer_number,salutation,first_name,last_name,email,phone,newsletter,created_at cus_0001,C-100001,ms,Julia,Schwarz,julia.schwarz.1@example.net,069 90009472,false,2026-05-04T06:26:18Z cus_0002,C-100002,mr,Mehmet,Lehmann,mehmet.lehmann.2 …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): addresses (Adressen) als JSONFiktiv
[ { "id": "adr_0001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): addresses (Adressen) als CSVFiktiv
id,customer_id,type,street,house_number,postal_code,city,region,country adr_0001,cus_0001,billing,Exempelring,26,65757,Demostadt,,DE adr_0002,cus_0002,billing,Musterallee,118,39216,Probenheim,,DE …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): orders (Bestellungen) als JSONFiktiv
[ { "id": "ord_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): orders (Bestellungen) als CSVFiktiv
id,order_number,customer_id,billing_address_id,shipping_address_id,status,ordered_at,shipping_cents,total_net_cents,total_tax_cents,total_gross_cents,currency ord_00001,O-2026-000001,cus_0006,adr_0008,adr_0008,cancelled,2026-01-14T07:27:35Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): order_items (Positionen) als JSONFiktiv
[ { "id": "itm_000001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): order_items (Positionen) als CSVFiktiv
id,order_id,product_id,quantity,unit_price_net_cents,tax_rate,net_cents,tax_cents,gross_cents itm_000001,ord_00001,prd_021,1,1868,7,1868,131,1999 itm_000002,ord_00002,prd_003,1,349,19,349,66,415 …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): payments (Zahlungen) als JSONFiktiv
[ { "id": "pay_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): payments (Zahlungen) als CSVFiktiv
id,order_id,method,status,amount_cents,iban,paid_at,refunded_at pay_00001,ord_00001,paypal,failed,2489,,, pay_00002,ord_00003,credit_card,refunded,6033,,2026-02-23T03:20:13Z,2026-03-05T04:08:13Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (klein): shipments (Sendungen) als JSONFiktiv
[ { "id": "shp_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (klein): shipments (Sendungen) als CSVFiktiv
id,order_id,carrier,tracking_number,shipped_at,delivered_at shp_00001,ord_00003,TestExpress,TEST-0003-7D2,2026-02-24T04:08:13Z,2026-02-25T04:08:13Z shp_00002,ord_00004,SampleLogistics,TEST-0004-26M,2026-03-23T10:19:31Z,2026-03-27T10:19:31Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): Tabellen, Spalten und BeziehungenFiktiv
Sample shop (medium, German flavour): 8 tables, money in cents (EUR) Relations …
Überblick über die acht Tabellen mit Zeilenzahl, Spalten und Regeln der Daten (60 Kunden, 160 Bestellungen).
Beispiel-Shop (mittel): Schema und Daten als SQL (PostgreSQL)Fiktiv
-- Sample shop (medium, German flavour, EUR): schema and data for PostgreSQL. All data is invented. -- License: CC0 1.0 Universal (https://creativecommons.org/publicdomain/zero/1.0/) BEGIN; …
Eine Transaktion mit CREATE TABLE und INSERT für alle Tabellen, in der Reihenfolge der Fremdschlüssel. Beträge in Cent.
Beispiel-Shop (mittel): alle Tabellen in einer JSON-DateiFiktiv
{ "categories": [ { …Ein Objekt mit einem Array je Tabelle, geeignet für Seed-Skripte. Beträge in Cent, Verweise gültig.
Beispiel-Shop (mittel): categories (Kategorien) als JSONFiktiv
[ { "id": 1, …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): categories (Kategorien) als CSVFiktiv
id,name,slug 1,Office & Stationery,office-stationery 2,Household,household …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): products (Produkte) als JSONFiktiv
[ { "id": "prd_001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): products (Produkte) als CSVFiktiv
id,sku,name,category_id,price_net_cents,tax_rate,stock,active,created_at prd_001,SKU-0001,"Notebook A5, squared",1,420,19,36,true,2025-10-16T08:00:00Z prd_002,SKU-0002,"Ballpoint pens, 10 pack",1,599,19,166,true,2025-06-20T08:00:00Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): customers (Kunden) als JSONFiktiv
[ { "id": "cus_0001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): customers (Kunden) als CSVFiktiv
id,customer_number,salutation,first_name,last_name,email,phone,newsletter,created_at cus_0001,C-100001,ms,Sophie,Groß,sophie.gross.1@example.com,089 99998271,false,2026-06-27T03:15:35Z cus_0002,C-100002,ms,Laura,Schröder,laura.schroeder.2@e …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): addresses (Adressen) als JSONFiktiv
[ { "id": "adr_0001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): addresses (Adressen) als CSVFiktiv
id,customer_id,type,street,house_number,postal_code,city,region,country adr_0001,cus_0001,billing,Zum Musterhof,75,30265,Testingen,,DE adr_0002,cus_0002,billing,Testgasse,120,18995,Exempelburg,,DE …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): orders (Bestellungen) als JSONFiktiv
[ { "id": "ord_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): orders (Bestellungen) als CSVFiktiv
id,order_number,customer_id,billing_address_id,shipping_address_id,status,ordered_at,shipping_cents,total_net_cents,total_tax_cents,total_gross_cents,currency ord_00001,O-2026-000001,cus_0013,adr_0017,adr_0017,delivered,2026-01-07T03:57:16Z …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): order_items (Positionen) als JSONFiktiv
[ { "id": "itm_000001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): order_items (Positionen) als CSVFiktiv
id,order_id,product_id,quantity,unit_price_net_cents,tax_rate,net_cents,tax_cents,gross_cents itm_000001,ord_00001,prd_021,2,1868,7,3736,262,3998 itm_000002,ord_00002,prd_020,1,249,19,249,47,296 …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): payments (Zahlungen) als JSONFiktiv
[ { "id": "pay_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): payments (Zahlungen) als CSVFiktiv
id,order_id,method,status,amount_cents,iban,paid_at,refunded_at pay_00001,ord_00001,credit_card,paid,4488,,2026-01-07T04:11:16Z, pay_00002,ord_00002,credit_card,paid,7043,,2026-01-08T11:41:40Z, …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.
Beispiel-Shop (mittel): shipments (Sendungen) als JSONFiktiv
[ { "id": "shp_00001", …Erfundener Shop: Beträge in Cent, Summen stimmen mit den Positionen überein, Verweise zwischen den Tabellen sind gültig.
Beispiel-Shop (mittel): shipments (Sendungen) als CSVFiktiv
id,order_id,carrier,tracking_number,shipped_at,delivered_at shp_00001,ord_00001,SampleLogistics,TEST-0001-2II,2026-01-08T18:57:16Z,2026-01-12T18:57:16Z shp_00002,ord_00002,ExampleParcel,TEST-0002-5QM,2026-01-08T19:38:40Z,2026-01-12T19:38:40 …
UTF-8, Komma als Trenner, leere Zelle = NULL. Beträge in Cent, Verweise zwischen den Tabellen gültig.