Tag Archives: mysql

HeidiSQL – client gratuit pentru MySQL

HeidiSQL
HeidiSQL

HeidiSQL este un client gratuit si open-source pentru MySQL (MariaDB), MSSQL si PostgreSQL, cu o multime de functii utile programatorilor sau celor care administreaza baze de date MySQL. Personal folosesc acest program inca de pe vemea cand se numea MySQL-Front (2000-2001), iar astazi il gasesc indispensabil in activitatea mea zilnica.

Exista cel putin doua motive pentru care nu renunt la HeidiSQL: dezvoltatorul programului, Ansgar Becker, oferta suport tehnic prompt si mereu lanseaza versiuni noi ale programului. Iar incepand din luna februarie 2018 acest program poate fi descarcat si din Microsoft Store (pentru utilizatorii de Windows 10).

Din gama extinsa de facilitati amintesc:

  • manager de conexiuni la diverse baze de date
  • administrarea variabilelor si parametrilor de configurare a bazei de date
  • multiple sesiuni deschise intr-o singura fereastra
  • administrarea utilizatorilor si a drepturilor acestora
  • administrarea foarte comoda a bazelor de date si a tabelelor (creare, modificare, stergere)
  • interfata pentru crearea si editarea procedurilor si triggerelor
  • taburi separate pentru interogari, fiecare afisand rezultatele in subtaburi diferite
  • highlight si formatare (pretty formatting) sintaxa interogare SQL
  • highlight al celulelor cu aceeasi valoare ca si cea selectata
  • afisarea proceselor curente care ruleaza pe server, cu posibilitatea de administrare a lor
  • exportarea bazelor de date (sau doar a unor tabele) intr-un fisier sql sau direct in alta baza de date
  • exportarea rezultatelor unei interogari intr-un fisier extern in diferite formate (csv, xml, html, sql, LaTeX, PHP Array, JSON, etc…)
  • importarea datelor dintr-un fisier csv direct intr-o tabela
  • vizualizarea rapida si editarea continutului unei tabele
  • optimizarea in masa a tabelelor
  • posibilitatea de a filtra lista bazelor de date si a tabelelor utilizand sintaxa regex
  • posibilitatea de a salva unele interogari intr-o lista cu acces rapid (Snippets)
  • poate fi utilizat si ca soft portabil (nu necesita instalare)
  • exista variante pentru 32 si 64 bit

Evident ca pe masura ce veti utiliza HeidiSQL, pe care il consider ca fiind cel mai bun program in ramura sa, veti descoperi si multe alte facilitati.

Incepand cu versiunea 9.5.0.5318, pentru conectarea la un server Microsoft SQL este necesar sa fie instalat Microsoft OLE DB Driver for SQL Server.

Mai multe detalii: heidisql.com

Screenshot-uri: heidisql.com/screenshots.php

Diverse operatiuni: heidisql.com/help.php.

Selectarea celor mai recente/vechi inregistrari in SQL JOIN

Se considera tabela clienti, cu urmatoarea structura:

Si tabela adrese_clienti, cu urmatoarea structura:

Pentru fiecare client se pastreaza istoricul modificarilor adreselor, in aceeasi tabela, fiecare inregistrare pastrand perioada de valabilitate in campurile date_from si date_to. Inregistrarea actuala pentru fiecare client este marcata de valoarea 9999-01-01 00:00:00 in campul date_to.

Doua probleme

1. Se doreste selectarea celei mai vechi adrese pentru fiecare client:

Rezultat:

2. Se doreste selectarea adresei actuale pentru fiecare client:

sau mai simplu (datorita campului date_to):

Rezultat: