5 IDE-uri SQL cu sursă deschisă pe care să le învățați și să le explorați

, Author

Dacă ați lucrat mult cu SQL, probabil că ați folosit o anumită formă de IDE SQL pentru a vă ajuta să finalizați această muncă. Da, este posibil să faceți totul în SQL din linia de comandă; dar crearea sau chiar întreținerea bazelor de date și a tabelelor în acest mod este un exercițiu de masochism. Există câteva IDE-uri comerciale frumoase, cum ar fi dbArtisan și SQL Server’s Management Studio, dar IDE-urile sunt un domeniu în care open-source se poate descurca la fel de bine (sau, în unele cazuri, chiar mai bine).

Acest lucru este deosebit de relevant, deoarece impactul cloud-ului (adică al SAAS) începe să se facă simțit pe piața bazelor de date comerciale. Printre motive se numără faptul că furnizorii de servicii utilizează mai mult bazele de date open-source, plus ascensiunea alternativelor precum NoSQL. Site-ul statista sugerează că veniturile globale din bazele de date comerciale vor continua să scadă în anii următori.

Pentru acest articol, cei cinci clienți SQL pe care i-am ales sunt Squirrel, HeidiSQL, DBeaver, Tora și OmniDB. Am folosit HeidiSQL și Squirrel pentru o vreme, așa că să începem cu acesta din urmă.

Squirrel

Squirrel a fost o alegere populară de client în banca unde am lucrat acum cinci ani, deoarece preferau Java, și în această limbă este scris. Sybase a fost, de asemenea, utilizat pe scară largă (nu era chiar cea mai populară bază de date), iar Squirrel este unul dintre puținii clienți care pot vorbi cu el. (Dacă țineți scorul acasă, Sybase a fost, de asemenea, strămoșul lui SQL Server). Squirrel bifează toate bazele de date majore (Oracle, DB2, Informix, Ingres, SQL Server, SAPDB și Sybase), plus multe altele, și are o experiență de 17 ani.

Dar Squirrel a fost în cele din urmă interzis în producție la bancă, mai ales din cauza capacității sale de a suporta sesiuni simultane cu mai multe baze de date. De câteva ori, a rămas fără memorie, cauzând probleme cu bazele de date live; asta i-a adus cartonașul roșu. Pentru amploarea acoperirii (datorită JDBC), este foarte recomandat, dar aveți grijă câte sesiuni rulați; cu cât aveți mai multă memorie, cu atât mai bine.

HeidiSQL

Cu puțin peste jumătate din vârsta lui Squirrel, HeidiSQL a fost favoritul meu personal în ultimii trei ani. Este mai restrâns în ceea ce privește gama de baze de date (primești doar MySQL/MariaDB, SQL Server și PostgreSQL), dar pentru mulți, este suficient. L-am găsit foarte rapid, ceea ce este vital pentru proiecte cum ar fi un tabel cu 29 de milioane de rânduri; o comandă SQL select count (*) împotriva MariaDB care rulează pe PC-ul meu durează aproximativ două minute.

Cred că o mare parte din viteză se datorează faptului că folosește propriile drivere și se conectează direct, nu prin ODBC. Deosebit de bune sunt funcțiile de import/export și importul pe loturi: Puteți rula fișiere SQL mari (cum ar fi exporturile de copii de rezervă) direct, fără a le încărca în fereastra de interogare.

O altă caracteristică frumoasă: Când scrieți o interogare SQL, coloanele tabelului selectat în acel moment sunt afișate într-o altă fereastră, împreună cu funcțiile și cuvintele cheie SQL, plus propriile dvs. fragmente. Când lucrați atât cu baze de date live, cât și cu baze de date de dezvoltare, posibilitatea de a muta cu ușurință blocuri mari de date este foarte importantă.

HeidiSQL este pentru Windows, dar poate fi folosit în altă parte prin intermediul Wine Emulator pe Linux și Mac (dar, ca să fiu sincer, aș folosi la fel de repede Squirrel sau DBeaver).

DBeaver

DBeaver este un alt client SQL alimentat de Java; ca și conectorul JDBC, are un set mare de baze de date la care se poate conecta. Există o versiune Enterprise, care include suport pentru baze de date NoSQL (Cassandra, MongoDb și Redis), dar ediția pentru comunitate este cea pe care am examinat-o.

Există o listă mare de baze de date pe care le puteți încerca din expertul de conectare; eu am ales SQLite, deoarece am o bază de date de 600 MB creată pentru un proiect cu câțiva ani în urmă. A funcționat fără probleme cu acea bază de date și am fost impresionat. Deși prefer în continuare HeidiSQL, aș fi foarte bucuros să folosesc DBeaver dacă s-ar ivi ocazia.

Un lucru de reținut: DBeaver nu instalează driverele la început, ci le preia pe măsură ce aveți nevoie de ele (acest lucru este foarte „Eclipse-like”). Acest lucru se datorează probabil faptului că este construit pe platforma Eclipse, așa că, dacă sunteți obișnuiți cu aceasta, vă veți simți ca acasă. Cu siguranță, eu nu am avut probleme cu el; l-am simțit foarte rapid. Gama de formate de export include CSV, HTML și XML, precum și JSON și Markdown.

Avantajul Java, atât pentru acesta, cât și pentru Squirrel, este că nu sunteți restricționat de platformă; DBeaver include atât instalări Debian și RPM pentru Linux, cât și pentru Windows și Mac.

Tora

Scris în C++, am ales Tora ca unul dintre cele cinci pentru că suportă Oracle și are un depanator PL/SQL. Este cross-platform și a fost testat cu GCC, Clang și MSVC 2013/2015. În plus față de Oracle, suportă MySQL, PostgreSQL și alte baze de date prin ODBC. A devenit open source în urmă cu 13 ani.

Așa cum v-ați aștepta, Tora folosește Qt pentru interfața cu utilizatorul și este rapid, dar se simte puțin învechit, mai ales atunci când se conectează la MySQL. Dacă lucrați cu Oracle și nu aveți software comercial, folosiți Tora; dar pentru MySQL/PostgreSQL, sau oricare dintre HeidiSQL, Squirrel și DBeaver este probabil mai bun.

OmniDB

OmniDB este puțin diferit de restul. Este scris în Python și instalează un server web și un browser local. Bazele de date suportate includ Oracle, MySQL, MariaDB și PostgreSQL. Bazele de date SQLite, SQL Server, DB2 și Firebird nu sunt suportate în prezent, dar sunt în mod clar pe foaia de parcurs.

Nu sunt un fan al interfețelor grafice web în general, dar aceasta arată foarte bine și funcționează foarte bine. HeidiSQL și DBeaver oferă un import/export mai bun, dar OmniDB este deschis la sugestii pentru dezvoltarea viitoare. La fel ca și cei doi clienți Java, OmniDB este cross-platform și are cel mai modern aspect.

Concluzie

Sunt obișnuit cu HeidiSQL, dar caracteristicile lui DBeaver m-au impresionat. Squirrel este foarte solid și matur. OmniDB arată bine, deși este un pic cam ușor ca funcționalitate în acest moment; probabil că nu ați ghici că folosește CMS-ul Django. Tora este destul de bun, dar ar putea avea o conectivitate mai bună.

Lasă un răspuns

Adresa ta de email nu va fi publicată.