figbellDownloaden

Functies

Tabellen, kolommen en relaties worden in een eenvoudige taal geschreven; ernaast wordt live een ER-diagram getekend, en elke wijziging in het diagram wordt teruggeschreven naar de code. Tabliva toont problemen in het schema, stelt normalisatie voor en maakt de SQL en het geversioneerde migratiebestand die een database in de staat van de code brengen. PostgreSQL, MySQL / MariaDB en SQLite.

Belangrijkste functies

Een leesbare schemataal
Tabellen, logische typen, primaire en vreemde sleutels (->), indexen (gedeeltelijke en expressie-indexen), checks en enums worden in .tabliva-bestanden geschreven. Dialectspecifieke details worden met annotaties toegevoegd (@postgres(type: "jsonb")), views, triggers en functies met ruwe sql-blokken. De editor heeft syntaxiskleuring, aanvulling en zoeken.
ER-diagram in twee richtingen
Het diagram wordt bijgewerkt terwijl u typt; bij een syntaxisfout blijft de laatste geldige toestand staan en wordt de fout met regel getoond. Tabellen, kolommen, relaties en indexen in het diagram toevoegen, hernoemen of verwijderen, of een type wijzigen, herschrijft alleen de betreffende coderegel; opmerkingen blijven staan. De indeling staat in een apart bestand (diagram.tabliva-layout.json).
Problemen: 55 regels
Sleutels, voorstellen voor ontbrekende vreemde sleutels met betrouwbaarheidsniveau, typen (bijv. float voor bedragen), indexen, dubbele gegevens, naamgeving, structuur en dialectcompatibiliteit. Elk probleem heeft een eenvoudige uitleg en een oplossing; veilige oplossingen worden in één keer toegepast. Negeren of een regel uitschakelen wordt in het bestand kurallar.tabliva geschreven.
Normalisatie
Functionele afhankelijkheden worden in de code vastgelegd met een depends-regel of voorgesteld op basis van kolomnamen. Per tabel worden de stappen van 1NV tot BCNV getoond, oplossingen met een voor- / navoorbeeld (naar andere tabel verplaatsen, nieuwe tabel, subtabel, bewuste kopie) en SQL voor gegevensmigratie in het dialect.
Wijzigingsplan en migratiebestanden
De code wordt vergeleken met een doel (migratiemap, momentopname; op de desktop een live database). Hernoemingen worden herkend; elke stap krijgt risicolabels zoals gegevensverlies, herschrijven van de tabel of vergrendeling. SQL wordt gemaakt voor PostgreSQL, MySQL / MariaDB en SQLite; het migratiebestand wordt met een gedateerde naam in de map migrations/ geschreven en de controlesom wordt aan tabliva.sum toegevoegd.
Bestaand schema importeren
SQL-dumps (pg_dump, mysqldump, SQLite .schema of met de hand geschreven CREATE TABLE), DBML en een ander Tabliva-project worden gelezen; u kiest één bestand per tabel of één enkel bestand. Alleen het schema wordt overgenomen; INSERT- en COPY-regels worden overgeslagen. Op de desktop kan het schema ook rechtstreeks uit een database worden gelezen.
Synchronisatie
Bron en doel (code, momentopname, migratiemap; op de desktop een database) worden naast elkaar of in één kolom vergeleken; de richting kan worden omgedraaid. Wijzigingen die zonder migratiebestand in de database zijn gedaan, worden als afwijking getoond; het synchronisatiescript wordt uit de geselecteerde wijzigingen gemaakt.
Documentatie
De datadictionary wordt opgeslagen als HTML (één bestand dat niets van het netwerk laadt), Markdown of via het afdrukvenster als PDF. Beschrijvingen komen uit ///-opmerkingen in de code; een hier geschreven beschrijving wordt naar de code teruggeschreven. Het ER-diagram wordt geëxporteerd als licht of donker PNG / SVG, het schema als SQL of DBML.
Voorbeeldgegevens en schemageschiedenis
Er worden voorbeeldgegevens gemaakt die typen, beperkingen en relaties respecteren; dezelfde seed geeft altijd dezelfde gegevens (SQL, CSV of JSON). De schemageschiedenis wordt afgeleid uit migratiebestanden en momentopnamen; twee willekeurige momenten kunnen worden vergeleken.
Live database (desktop)
De desktop-app maakt verbinding met PostgreSQL en MySQL / MariaDB (met SSL-opties): schema uit de database importeren, synchronisatie, bevestigd ‘Toepassen op database’ (gegevensverlies accepteren en de databasenaam typen), voorbeeldgegevens laden en gegevenscontroles voor voorgestelde relaties. In de browser en op de telefoon worden deze functies niet getoond.
Projectmap en delen
Projecten worden op dit apparaat bewaard; in browsers die naar een map kunnen schrijven en op de desktop kan een project aan een map worden gekoppeld en wordt elke wijziging daar geschreven (bijv. een Git-repository). Projecten worden als ZIP geëxporteerd en geïmporteerd; een bestand, het project of de SQL van het plan wordt gedeeld met de deelfunctie van het apparaat.
Voorbeeldproject, back-up en offline
Bij de eerste start is een winkelschema met een paar bewuste problemen meegeleverd; ‘Voorbeeldproject opnieuw toevoegen’ haalt het terug. ‘Back-up maken…’ slaat projecten en instellingen op in één bestand (zonder mapkoppelingen en wachtwoorden). Er is geen account nodig; alles behalve de live database werkt offline.

Apparaten en browsers

  • Op de desktop staan projectbestanden en doelen links, code en diagram in het midden; de weergaven (Editor, Wijzigingen, Problemen, Normalisatie, Synchronisatie, Documentatie, Hulpmiddelen) kiest u in de balk bovenaan. Op de telefoon en de tablet in staande stand bevat de onderste navigatie Code, Diagram, Problemen, Plan en Meer.
  • Live-databasefuncties (importeren uit een database, een database in Synchronisatie, ‘Toepassen op database’, voorbeeldgegevens laden, gegevenscontroles) zijn alleen in de desktop-app. In de browser en op de telefoon worden migratiebestanden geschreven of wordt SQL opgeslagen en gedeeld.
  • Rechtstreeks naar een map schrijven kan in Chrome en Edge en in de desktop-app; in Safari, Firefox en op de telefoon blijven projecten op dit apparaat en worden ze als ZIP verplaatst.
Schermafbeelding van Tabliva: werkruimte met voorbeeldinhoud
Desktop
Schermafbeelding van Tabliva: werkruimte met voorbeeldinhoud
Tablet
Schermafbeelding van Tabliva: werkruimte met voorbeeldinhoud
Telefoon

Sneltoetsen

Op macOS worden ⌘ en ⌥ gebruikt; op Windows en Linux Ctrl en Alt.

SneltoetsActie
1 – 7Weergaven
Ctrl/⌘ SOpslaan
Ctrl/⌘ OProjecten
Ctrl/⌘ IImporteren
Ctrl/⌘ ⇧ PPlan bekijken
Ctrl/⌘ FZoeken in code
Ctrl/⌘ Z · ⇧ ZOngedaan maken · opnieuw
F2Tabel hernoemen (diagram)
← → ↑ ↓Geselecteerde kaart verplaatsen
EnterTabelpagina openen
DeleteTabel verwijderen

Op aanraakschermen wordt het diagram met twee vingers gezoomd en verschoven; voor een relatie tikt u eerst op de bronkolom en dan op de doelkolom. Lang drukken op een tabelkaart opent het contextmenu; menu’s en dialoogvensters openen van onderaf.

Tabliva downloaden

Probeer het zonder installatie uit in de browser; voor blijvend gebruik koopt u de versie voor macOS, Windows of Linux.