Generuj SQL z języka naturalnego Bezpieczne wykonywanie zapytań

Pisz po ludzku.
Dostajesz poprawny SQL.

Wgraj schemat bazy, zadaj pytanie i od razu zobacz wynik.
AI-SQL-Chat generuje jedno, bezpieczne zapytanie SELECT i wykonuje je na Twojej bazie.

Wypróbuj wersję demo Wklej schemat Załaduj własny schemat Instrukcja: wklej schemat Instrukcja: eksport do JSON
Nie zapisujemy wyników. Ograniczenia DDoS, rate-limit, ochrona przed DML/DDL.

Generator SQL z języka naturalnego — dla kogo i jak działa?

AI-SQL-Chat to lekki i bezpieczny generator SQL z języka naturalnego. Wpisujesz zapytanie po polsku, a narzędzie zwraca jedno, poprawne zapytanie SELECT zgodne z Twoim schematem bazy danych. Teraz możesz również wkleić własny schemat bezpośrednio na stronie Wklej schemat i wygenerować zapytanie SQL jednorazowo — bez logowania i bez zapisywania danych.

Jeśli chcesz zachować swój schemat na stałe, wystarczy go wcześniej przygotować zgodnie z instrukcją na stronie Instrukcja: wklej schemat i zapisać w formacie .json. Po zalogowaniu możesz go wgrać na stronie Załaduj schemat, aby w dowolnym momencie wracać do swojego schematu i generować nowe zapytania SQL bez ponownego wklejania danych.

Najważniejsze korzyści

  • Tylko SELECT — zapytania tylko-do-odczytu z wymuszonym LIMIT 1000.
  • Własny schemat — możesz wkleić go ręcznie lub wgrać plik JSON.
  • Zgodność z danymi — generowany SQL odnosi się do tabel i kolumn Twojej bazy.
  • Bez wysyłki danych — przetwarzanie odbywa się wyłącznie w przeglądarce.
  • Bezpieczeństwo — filtry anty-SQLi, limity zapytań i ochrona przed DDoS, opisane w Bezpieczeństwie.

Jak zacząć w 2–3 minuty

  1. Wygeneruj schemat swojej bazy danych wg instrukcji i przygotuj wynik w formacie JSON.
  2. Użyj strony Wklej schemat, aby jednorazowo wkleić schemat i wygenerować zapytanie SQL.
  3. Jeśli chcesz zachować swój schemat na później — zaloguj się i wgraj plik JSON na stronie Załaduj schemat. Od tej chwili możesz wracać do niego w każdej sesji i generować zapytania SQL w dowolnym momencie.
Prompt /ask
„podaj liczbę sprzedanych modułów w podziale na dom i mieszkanie, dodaj wartość wycen”

          
SQL AI-SQL-Chat
SELECT s_rodzajdomu.rodzajDomu,
       SUM(wynik_wycenymoduly.liczbaModulow)         AS liczba_sprzedanych_modulow,
       ROUND(SUM(wynik_wycenymoduly.cenaBrutto), 2)  AS wartosc_wyceny
FROM wynik_wycenymoduly
JOIN dane_domu    ON wynik_wycenymoduly.id_dane_klienta = dane_domu.id_dane_klienta
JOIN s_rodzajdomu ON dane_domu.rodzaj_domu = s_rodzajdomu.id_rodzajDomu
GROUP BY s_rodzajdomu.rodzajDomu
LIMIT 1000;

Jak to działa

Trzy proste kroki od pytania do wyniku
1

Wygeneruj i wgraj schemat

Wygeneruj i wczytaj JSON ze strukturą tabel i kolumn. Możesz też użyć naszego przykładowego schematu.

2

Zadaj pytanie

Napisz zwykłym językiem. Silnik wygeneruje jedno SELECT z walidacją i limitami.

3

Odbierz wynik

Pokażemy SQL i tabelę wynikową. Liczby zaokrąglamy do 2 miejsc — gotowe do prezentacji.

Wgrywanie własnego schematu

Wgrywanie własnego schematu oraz generowanie zapytań SQL na podstawie promptów jest dostępne po zalogowaniu. Po zalogowaniu Twój schemat zostaje zapisany i dostępny w kolejnych sesjach.

Zaloguj się lub utwórz konto, aby korzystać z pełnej wersji.

Wygeneruj schemat JSON z własnej bazy danych

Nie masz jeszcze pliku schematu? W 2–3 minuty przygotujesz go z MySQL, PostgreSQL, SQL Server lub Oracle. Uruchom krótkie zapytanie, a wynik wyeksportuj do .json.

Optymalizuj swoje zapytanie

Nowa funkcja optymalizacji zapytań SQL pozwala przeanalizować dowolny SELECT i otrzymać gotowe rekomendacje dotyczące indeksów, filtrów oraz planów wykonania. Możesz uzyskać pełny raport optymalizacyjny na stronie

Dlaczego AI-SQL-Chat?

Bezpieczeństwo, użyteczność i szybkość wdrożenia

Jedno bezpieczne SELECT

Blokujemy DDL/DML, OUTFILE/INFILE, SLEEP/BENCHMARK. Wymuszamy LIMIT oraz pojedynczą instrukcję.

Ochrona & Rate-limit

Slowdown, limity per IP, shedder na pętli zdarzeń — ochrony przed nadużyciami i DDoS.

Łatwa integracja

Własny schemat JSON, prosty deployment (Node + Nginx), działa lokalnie i w chmurze.

Bezpieczeństwo danych

Projekt od początku zorientowany na bezpieczeństwo operacji SQL i odporność na nadużycia.

  • Brak przechowywania wyników — wszystko w pamięci.
  • Twarde filtrowanie SQL (pojedynczy SELECT + zakazane wzorce).
  • Ograniczenia rozmiaru body, brak „index of” w statykach.
  • Helmet, HPP, CORS whitelist, nocache, kompresja.
Wymuszeniamiddleware
if (!/^\s*SELECT\b/i.test(sql)) throw new Error('Tylko SELECT');
if (banned.test(sql)) throw new Error('Niedozwolone instrukcje');
if (!/\bLIMIT\b/i.test(sql)) sql = sql.replace(/;$/, '') + ' LIMIT 1000;';
Ochronatoobusy / rate-limit / slowdown
if (toobusy()) return res.status(503).json({ error: 'Serwer przeciążony' });

FAQ

Czy modyfikujecie dane w bazie?

Nie. System generuje i wykonuje wyłącznie jedno zapytanie SELECT, z wymuszonym LIMIT i filtrami anty-SQLi.

Gdzie trafiają wyniki zapytań?

Tylko do przeglądarki. Backend nie przechowuje wyników — są w pamięci procesu wyłącznie na czas wykonania.

Czy mogę użyć własnego schematu?

Tak, wgraj plik JSON ze strukturą tabel/kolumn na stronie „Załaduj schemat”.

Czy mogę uruchomić on-premise?

Tak — oferuję konsultacje on-prem / VPC. Skontaktuj się ze mną.

Jak wygenerować schemat bazy danych (tabele i kolumny)?

Poniżej proste zapytania pokazujące nazwy tabel i kolumn dla popularnych silników. Wklej odpowiedni fragment w swojej bazie, a wynik możesz wyeksportować do JSON i użyć w AI-SQL-Chat.

MySQL / MariaDB

SELECT
  TABLE_NAME,
  COLUMN_NAME,
  DATA_TYPE,
  IS_NULLABLE,
  COLUMN_KEY
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'twoja_baza'   -- <-- podmień
ORDER BY TABLE_NAME, ORDINAL_POSITION;

PostgreSQL (przez information_schema)

SELECT
  table_name   AS table_name,
  column_name  AS column_name,
  data_type    AS data_type,
  is_nullable
FROM information_schema.columns
WHERE table_schema = 'public'       -- <-- podmień, np. public
ORDER BY table_name, ordinal_position;

SQL Server (Azure SQL / MS SQL)

SELECT
  TABLE_SCHEMA,
  TABLE_NAME,
  COLUMN_NAME,
  DATA_TYPE,
  IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
-- opcjonalnie zawęź:
-- WHERE TABLE_CATALOG = 'TwojaBaza' AND TABLE_SCHEMA = 'dbo'
ORDER BY TABLE_SCHEMA, TABLE_NAME, ORDINAL_POSITION;

SQLite (lista tabel + kolumny dla każdej)

-- Tabele
SELECT name AS table_name
FROM sqlite_master
WHERE type = 'table' AND name NOT LIKE 'sqlite_%'
ORDER BY name;

-- Kolumny dla jednej tabeli (podmień):
PRAGMA table_info('twoja_tabela');

Oracle (Twoje tabele)

SELECT
  TABLE_NAME,
  COLUMN_NAME,
  DATA_TYPE,
  DATA_LENGTH,
  DATA_PRECISION,
  DATA_SCALE,
  NULLABLE
FROM USER_TAB_COLUMNS
ORDER BY TABLE_NAME, COLUMN_ID;

Oracle (konkretna schema/OWNER)

SELECT
  OWNER,
  TABLE_NAME,
  COLUMN_NAME,
  DATA_TYPE,
  DATA_LENGTH,
  DATA_PRECISION,
  DATA_SCALE,
  NULLABLE
FROM ALL_TAB_COLUMNS
WHERE OWNER = 'HR'  -- <-- podmień na nazwę swojej schemy (zwykle WIELKIMI literami)
ORDER BY TABLE_NAME, COLUMN_ID;

Nie pamiętasz nazwy schemy w Oracle? Sprawdź:

SELECT USER FROM dual;           -- aktualnie zalogowany użytkownik
SELECT username FROM all_users;  -- dostępne schemy
Oracle: co wpisać w polu OWNER?

OWNER to nazwa schemy (zwykle równa nazwie użytkownika) w WIELKICH LITERACH, np. HR, SCOTT, APPUSER. Jeśli nie jesteś pewny, uruchom:

SELECT USER FROM dual;           -- pokaże bieżącego użytkownika (często to właściwy OWNER)
SELECT username FROM all_users;  -- lista wszystkich schem

Użyj tej wartości w klauzuli WHERE OWNER = 'TWOJ_OWNER' w zapytaniu do ALL_TAB_COLUMNS.

Dla kogo to narzędzie będzie szczególnie użyteczne?

Różne role, jeden cel — szybki dostęp do danych

Co użytkownicy mówią o AI-SQL-Chat?

Opinie o praktycznym wykorzystaniu narzędzia

Szybko ułatwia pracę z danymi

świetnie sprawdziło się, gdy potrzebowałem szybko otrzymać poprawne zapytanie SQL — bez wertowania dokumentacji. Zaoszczędziło mi sporo czasu i zdjęło z głowy techniczne bariery.

Pomaga nawet wtedy, gdy znasz SQL

nie zastępuje pisania zapytań w 100%, ale jest świetnym pomocnikiem — generuje szkice, podpowiedzi i poprawne struktury SELECT, które mogłem od razu optymalizować.

Bezpieczny sposób na dostęp analityczny

osoby nietechniczne mogą korzystać z danych bez ryzyka modyfikacji w bazie. Tylko jeden SELECT i ochrona przed nadużyciami czynią to narzędzie pewnym i bezpiecznym.

Gotów sprawdzić na swoich danych?

Uruchom AI-SQL-Chat