Konvertor SQL dialektov
Prepíšte SQL medzi PostgreSQL, MySQL, SQLite a syntaxou SQL Server.
Konvertor SQL dialektov
Vložte dotaz napísaný pre jednu databázu a získajte ho späť prepísaný pre inú. Konvertor pokrýva syntax obmedzenia riadkov, bežné funkcie dátumov a reťazcov, zreťazovanie reťazcov, normalizovanie citácie identifikátorov a typy stĺpcov v PostgreSQL, MySQL, SQLite a SQL Server — užitočné pri migrácii projektu z MySQL na PostgreSQL, portovaní skriptu napísaného pre SQL Server na SQLite alebo pri kontrole, ako by dotaz vyzeral v inom motore.
Zdrojový dialekt a cieľový dialekt určujú dva konce konverzie. Začiarkavací políčka nižšie zapínajú a vypínajú jednotlivé konverzie: normalizovať citovanie identifikátorov vymeňuje úvodzovky, spätné úvodzovky a hranaté zátvorky za vlastný štýl cieľa; konvertovať klauzulu na obmedzenie riadkov sa prepína medzi LIMIT, TOP a OFFSET…FETCH FIRST bez tichého vypustenia offsetu; konvertovať funkcie dátumov a reťazcov prepisuje NOW()/GETDATE()/datetime('now'), LENGTH()/LEN(), SUBSTRING()/SUBSTR() a COALESCE()/IFNULL()/ISNULL(); konvertovať zreťazovanie reťazcov sa prepína medzi || a CONCAT()/+; konvertovať typy stĺpcov mapuje SERIAL, AUTO_INCREMENT, IDENTITY(1,1), BOOLEAN, TEXT a deklarácie v štýle TIMESTAMP na ich najbližší ekvivalent. Zachovať komentáre určuje, či -- a /* */ komentáre prežijú prepis.
Niektoré konštrukcie nemajú opravdu ekvivalent — PostgreSQL RETURNING a ON CONFLICT alebo MySQL ON DUPLICATE KEY UPDATE — a namiesto hádania prepisu ich nástroj ponechá na mieste a uvádza ich v bloku upozornení pripojenom k výstupu. Prepisuje text výrazu namiesto analýzy úplného plánu vykonávania, takže skontrolujte výsledok pred spustením proti skutočnej databáze, najmä pre vnorené poddotazy alebo neobvyklé formátovanie. Multi-statement skripty tiež fungujú: každý výroz oddelený bodočiarkou sa konvertuje sám o sebe.
Všetko sa spúšťa lokálne vo vašom prehliadači: žiadny dotaz, názov tabuľky, názov stĺpca alebo reťazec pripojenia sa nikdy neposielá nikam. Skopírujte výsledok, stiahnite ho ako .txt súbor alebo odošlite výstup priamo späť do vstupu, aby ste spustili ďalší prechod.