Platforma

Edytor tabel: mapa PostGIS, walidacja JSON i dane testowe

Mapa dla kolumn geometry/geography, ograniczenia JSON Schema (pg_jsonschema) i generator realistycznych danych.

Mapa (PostGIS)

Gdy tabela ma kolumnę geometry lub geography, w edytorze pojawia się przełącznik Dane | Mapa. Mapa korzysta z MapLibre GL i darmowych kafelków OpenStreetMap (bez klucza API, z atrybucją © OpenStreetMap contributors). Domyślnie wczytywane są tylko obiekty z widocznego obszaru (do 2000 naraz) — przybliż, aby zobaczyć więcej. Kliknięcie obiektu pokazuje dane wiersza.

  • Przesuń punkt — w dymku punktu wybierz „Przesuń punkt…” i przeciągnij znacznik; zapis to UPDATE … SET kolumna = ST_SetSRID(ST_MakePoint(lng, lat), 4326) (dla geometry w innym SRID wartość jest transformowana).
  • Ustaw punkt — wiersze bez lokalizacji wybierzesz z listy i klikniesz miejsce na mapie.
  • GeoJSON — eksport aktualnie wczytanych obiektów jako FeatureCollection.
  • Lokalizacja — dla tabeli bez kolumny przestrzennej przycisk włącza PostGIS (w schemacie extensions) i dodaje kolumnę geography(Point, 4326) z indeksem GIST.

Edycja wymaga klucza głównego i roli z prawem zapisu.

Walidacja JSON Schema

Dla kolumn json/jsonb przycisk Walidacja JSON wnioskuje schemat z istniejących wartości (JSON Schema draft 2020-12: typy, properties, required, items, formaty), pokazuje ile wierszy go nie spełnia i dodaje ograniczenie:

alter table public.orders add constraint orders_meta_jsonschema
  check (extensions.jsonb_matches_schema('{…}'::json, meta));

Rozszerzenie pg_jsonschema jest włączane automatycznie. Jeśli część danych nie pasuje, ograniczenie można dodać jako NOT VALID — wtedy sprawdzane są tylko nowe zapisy i zmiany. Aktywne ograniczenia usuniesz z tego samego okna.

Dane testowe

Generuj dane tworzy do 1000 wierszy naraz (partiami po 200) z realistycznymi polskimi danymi: imiona i nazwiska, e-maile, telefony, miasta, adresy, kody pocztowe, firmy. Generator respektuje typy, NOT NULL, enumy, kolumny unikalne i klucze obce (losuje istniejące wartości z tabeli nadrzędnej); kolumny z wartością domyślną lub tożsamości zostawia bazie. Najpierw zobaczysz podgląd 5 wierszy.

Wypełnij całą bazę… (pod listą tabel) wypełnia wszystkie tabele schematu w kolejności kluczy obcych — najpierw tabele, do których inne się odwołują. Duplikaty wartości unikalnych są pomijane (on conflict do nothing).