Pretvornik SQL dialektov
Preupiši SQL med PostgreSQL-om, MySQL-om, SQLite-om in SQL Server-om.
Pretvornik SQL dialektov
Prilepi poizvedbo napisano za eno podatkovno bazo in je dobij nazaj prepisano za drugo. Pretvornik pokriva sintakso omejitve vrstic, pogoste datumske in funkcije nizov, stikanje nizov, narekovaje identifikatorjev in vrste stolpcev med PostgreSQL-om, MySQL-om, SQLite-om in SQL Server-om — koristno pri selitvi projekta iz MySQL-a v PostgreSQL, prilagoditi skripte napisane za SQL Server na SQLite, ali preverite tudi, kako bi izgledala poizvedka na drugem motorju.
Izvorna dialekt in ciljna dialekt izbereta dve strani pretvorbe. Potrditvena polja spodaj vključijo/izključijo posamezne pretvorbe: normalizacija narekovajov identifikatorjev zamenja dvojne narekovaje, backtick-e in oglatim oklepajem s svojim slogom cilja; konverzija stavka omejitve vrstic preklopi med LIMIT, TOP in OFFSET…FETCH FIRST brez tiho spuščanja odmika; pretvorba datumskih in funkcij nizov prepiše NOW()/GETDATE()/datetime('now'), LENGTH()/LEN(), SUBSTRING()/SUBSTR() in COALESCE()/IFNULL()/ISNULL(); konverzija stikanja nizov preklopi med || in CONCAT()/+; pretvorba vrst stolpcev preslika SERIAL, AUTO_INCREMENT, IDENTITY(1,1), BOOLEAN, TEXT in TIMESTAMP-slog deklaracij na njihov najbližji ekvivalent. Zadrži komentarje nadzira, ali -- in /* */ komentarji preživijo prepis.
Nekatere konstrukcije resnično nimajo ekvivalenta — PostgreSQL-ov RETURNING in ON CONFLICT, ali MySQL-ov ON DUPLICATE KEY UPDATE — in namesto ugibanja pri prepisu, orodje jih pusti na mestu in jih navede v bloku opozoril, dodan rezultatu. Prepisuje besedilo ukaza namesto razčlenitve polnega plana izvajanja, zato pregledaj rezultat pred zagonom proti pravi bazi podataka, posebej za ugnezdene poizvedke ali nenavadno oblikovanje. Skripte z več ukazi delujejo tudi: vsak ukaz, ločen s podpičjem, se pretvori sam.
Vse teče lokalno v vašem brskalniku: nobena poizvedka, ime tabele, ime stolpca ali niz povezave nikoli ni poslano nikamor. Kopiraj rezultat, prenesite kot .txt datoteko ali pošlji rezultat direktno nazaj v vnos za nov tek.