QueryDog
Het icoon van QueryDog: een hond met een database als lijf

Nu in bèta, binnenkort in de App Store

Een MySQL- en MariaDB-client voor Mac, iPhone en iPad.

Blader door tabellen en bewerk ze, draai query's en exporteer of importeer bestanden van elke grootte, direct of via een SSH-tunnel. Eén app, op alle drie dezelfde.

QueryDog op een Mac: databases en tabellen in de zijbalk, een tabel met bestellingen open in een tabblad.

Geen bijrol voor de iPhone

Op de iPhone en iPad zit wat op de Mac zit: de tabbladen, het rooster, de filters, export en import. Bestanden komen uit de app Bestanden; een export gaat naar Bestanden, AirDrop of een andere app.

Een tabel met bestellingen in QueryDog op een iPhone.
Een tabel, de nieuwste bestellingen bovenaan
Een query met resultaat in QueryDog op een iPhone.
Een query met resultaat
De exportwizard van QueryDog op een iPhone, met de negen bestandsformaten.
Een export, in een van negen bestandsformaten

Wat de app doet

Alles hieronder zit er nu in, op elk van de drie.

Verbinden

Rechtstreeks naar de server, of door een tunnel.

Direct of via SSH
Verbind met de server zelf, of via een SSH-tunnel waarbij je inlogt met een wachtwoord of een sleutel.
SSH-sleutels
Maak een ed25519-sleutel op het apparaat, of voeg een sleutelbestand toe dat je al hebt. Eén sleutel is de standaard; per verbinding kun je een andere kiezen. Privésleutels staan in de Keychain.
Inloggen
Werkt met mysql_native_password en met caching_sha2_password, de standaard sinds MySQL 8.

Bladeren en bewerken

De zijbalk, de tabbladen en het rooster die je van andere clients kent.

Zijbalk en tabbladen
Databases en tabellen in een zijbalk, links of rechts. Elke tabel en elke query opent in een eigen tabblad.
Gegevensrooster
Een pagina rijen tegelijk, zo groot als je instelt. Klik op een kolom om te sorteren; filter op elke kolom, met operatoren als bevat, ≥ en is null.
Bewerken
Wijzig een cel waar hij staat. Spaar je wijzigingen op, lees de SQL die eruit volgt en voer alles in één transactie door.
Query's
Draai SQL en krijg het resultaat in een rooster. Breek een query af die te lang duurt. Het querylog bewaart de laatste 500 statements.
Structuur
Voeg kolommen toe, wijzig of verwijder ze; je ziet de ALTER-statements voordat ze draaien.

Export en import

Rijen gaan in porties, dus de grootte van een tabel of bestand maakt niet uit.

Export
Een tabel, een queryresultaat of een hele database naar CSV, tekst, JSON, XML, HTML, SQL, Excel of dBase. Een tabel wordt geëxporteerd zoals hij was op het moment dat de export begon.
Import
CSV, Excel en JSON naar een bestaande tabel of een nieuwe. Codering en scheidingsteken worden herkend; je ziet de eerste honderd rijen voordat er iets wordt geschreven.
SQL-bestanden
Draai een script of een dump, statement voor statement. DELIMITER-regels worden gevolgd; gaat een statement fout, dan krijg je het regelnummer.
Kopiëren
Geselecteerde rijen als tekst met tabs, CSV, JSON, of als INSERT- en UPDATE-statements.

Sync

Een verbinding stel je één keer in.

iCloud
Verbindingen, voorkeuren en het querylog gaan versleuteld via je eigen iCloud naar je andere apparaten. Wachtwoorden reizen mee in iCloud-sleutelhanger.
Privésleutels blijven
Een privésleutel verlaat het apparaat waar hij op staat nooit. Een ander apparaat krijgt de naam en de vingerafdruk, en een eigen sleutel.

Ploi

Voor servers die je met Ploi beheert.

SSH-sleutel op je servers
Koppel je Ploi-account en de app zet de publieke sleutel van het apparaat op de servers die je kiest.
Database en verbinding
Maak op een server een database met een eigen gebruiker. De verbinding ernaartoe wordt meteen opgeslagen.

Veiligheid

Voor de dag dat je per ongeluk op productie zit.

Alleen-lezen
Een verbinding die je als alleen-lezen markeert weigert statements die gegevens of structuur wijzigen, en imports en scripts voordat ze beginnen.
Vraagt eerst
Een UPDATE of DELETE zonder WHERE, een DROP of een TRUNCATE in het querytabblad vraagt om bevestiging: bij elke verbinding, of alleen bij de verbindingen die je als productie hebt gemarkeerd.

In een export staat wat in de database staat

Niet de tekst die het rooster toont. Een NULL blijft een NULL en wordt nooit het woord; een datum wordt altijd op dezelfde manier geschreven, wat je weergave-instellingen ook zijn; bytes zijn bytes.

Hoe elk exportformaat een waarde schrijft
Formaat NULL Getal Datum Bytes
CSV, tekst niets, \N of NULL 1299.50 2026-09-28 10:08:53 0x00FF
JSON null 1299.50 "2026-09-28 10:08:53" "AP8="
XML xsi:nil="true" 1299.50 2026-09-28 10:08:53 AP8=
SQL NULL 1299.50 '2026-09-28 10:08:53' X'00FF'
Excel een lege cel een getal een datum en tijd 0x00FF

Gratis met twee verbindingen

Met één eenmalige aankoop worden dat er zoveel als je wilt. Geen abonnement.

QueryDogAlle functies, met twee verbindingen.
Gratis
Onbeperkt verbindingenEén aankoop voor Mac, iPhone en iPad samen, op elk apparaat dat je Apple Account gebruikt.
€ 9,99eenmalig

De App Store bepaalt de prijs per land en valuta.

Hoor het als hij er is