DB Browser voor SQLite kunt u bekijken en bewerken SQLite databases op Linux. U kunt ontwerpen, maken en bewerken van deze database-bestanden, en kijkje in de interne werking van andere toepassingen. Hier ziet u hoe u deze SQLite GUI gebruiken.
De SQLite Database Project
De SQLite database bibliotheek en tools zijn een fenomenaal succesvolle open-source Structured Query Language (SQL) database-project. Zo succesvol, in feite, het kan met recht zichzelf de meest bellen schaal ingezet database-engine in de wereld.
Sinds de eerste release in 2000, heeft SQLite een absoluut onthutsend opname gezien. Het zit in elke iPhone en Android-telefoon, en Windows 10 of Mac-computer. Het is ook in elke internet browser, zoals Chrome, Firefox en Safari, evenals talloze andere toepassingen.
De ongelooflijke bereik van de SQLite database is te wijten aan de architectuur. Het is een snelle, lichtgewicht bibliotheek die is opgenomen (of gekoppelde , In developer-speak) in andere toepassingen. De database engine een integraal onderdeel van het product. Dit betekent dat u hoeft niet naar een externe SQL-database-server te bieden, zoals MySQL , MariaDB , of Microsoft SQL Server .
SQLite heeft ook een command-line tool voor het manipuleren van databases, maar het is de bibliotheek die maakte het een triomf. Het hebben van een staat, self-contained database-engine weggestopt in uw applicatie verwijdert een hoop problemen. Het vereenvoudigt de installatie routines van uw toepassing en verlaagt de minimale hardware-eisen voor uw toepassing.
Bovendien, omdat SQLite maakt gebruik van een cross-platform-bestand voor de database tabellen, indexen en schema's, de hele database kan worden verplaatst naar een andere computer. U kunt zelfs verplaatsen naar een machine die een ander besturingssysteem door het kopiëren van een bestand.
In feite is database-bestandsformaat SQLite is zo goed beschouwd, het is een van slechts een handvol aanbevolen door het Bibliotheek van het Congres voor de lange termijn opslag van gegevens.
Omdat SQLite is een ontwikkelaar bibliotheek, maar er is geen front-end voor het, wat betekent dat het niet een Graphical User Interface te hebben. Het is de toepassing met behulp van de bibliotheek die de gebruikersinterface biedt. De command-line utility kan draaien in een interactieve modus, maar het is nog steeds niet een GUI.
DB Browser voor SQLite (DB4S) past het wetsvoorstel goed. Het is een visueel hulpmiddel ontwikkeld door een andere open-source project om de creatie en manipulatie van SQLite databases mogelijk te maken vanuit een GUI.
DB Browser voor SQLite
DB Browser voor SQLite is rond (in één of incarnatie andere) sinds 2003 en heeft een aantal naamswijzigingen ondergaan. Voorheen heette het SQLite-browser, maar dat veroorzaakt verwarring. Mensen dachten dat het was geschreven door de SQLite team, en dus waren forwarding feature requests en support vragen over DB4S tot SQLite.
Dus, werd SQLite Browser omgedoopt DB Browser voor SQLite. Er worden nog steeds verwijzingen naar de oude naam hier en daar. In feite is de website van het project gebruikt nog steeds “sqlitebrowser” als haar domein, en de oude naam wordt ook gebruikt tijdens de installatie van DB4S.
Met DB4S kunt u:
- Maak databases.
- Import en export database schema's, tabellen en gegevens in SQL-formaat.
- Import en export tabellen en gegevens in CSV-formaat.
- Maken, bewerken en tabellen en indexen te verwijderen.
- Toevoegen, bewerken en verwijderen van gegevens.
- Bladeren en zoeken naar database records.
- Bewerken en uit te voeren SQL-commando's. U kunt ervoor zorgen dat het commando doet wat je denkt dat het gaat om voordat je hard-code een aantal SQL in uw toepassing.
Het installeren van DB Browser voor SQLite
Om DB4S op Ubuntu te installeren, gebruikt u de volgende opdracht (nogmaals, let op de installatie gebruikt nog steeds de oude naam):
sudo apt-get install sqlitebrowser
Op Fedora, typt u:
sudo dnf installeren sqlitebrowser
Op Manjaro, gebruiken we
pacman
:
sudo pacman -Sy sqlitebrowser
Een database importeren vanuit een SQL-bestand
Wanneer DB4S start, heeft het geen database die erin is geladen. We gaan op twee manieren kijken die u zowel gegevens als databasetabeldefinities kunt importeren, evenals hoe u uw eigen database kunt maken.
Soms kan u een database dump-bestand in SQL-indeling worden gegeven of verzonden. Dit bevat de instructies die nodig zijn om een database opnieuw te maken en de gegevens in een database in te voegen.
Een ander gemeenschappelijk formaat dat wordt gebruikt voor het importeren van tabeldefinities en gegevens is de Komma-gescheiden waarden (CSV) -indeling . U kunt een website-generatie-site gebruiken, zoals Database-testgegevens , om dummy-gegevens voor het beoefenen van doeleinden te genereren. U kunt dan uw gegevens exporteren als SQL of CSV.
Hieronder staat een SQL-bestand dat we op die site hebben gemaakt. Nadat het werd geëxporteerd, hebben we het bewerkt en een regel bovenaan het bestand toegevoegd, dat vereist is voor SQLITE:
Begin transactie;
Vervolgens hebben we het bestand opgeslagen. In DB4S klikken we op File & GT; Import & GT; Database van SQL-bestand.
Een dialoogvenster Bestandsselectie wordt geopend, zodat we ons SQL-bestand kunnen kiezen. In ons voorbeeld wordt het 'database_dump.sql' genoemd en het bevindt zich in de root van onze thuisgids.
Met het geselecteerde bestand klikken we op "Openen" en wordt een dialoogvenster Bestand opslaan geopend. U hoeft nu uw nieuwe database te noemen en te beslissen waar u het kunt opslaan. We belden de 'geekbase.sqlite3', en we sparen het in onze thuismap.
Klik op "Opslaan" wanneer u klaar bent om door te gaan. We hebben ons Source SQL-bestand geïdentificeerd en onze nieuwe database genoemd, dus het importproces kan nu beginnen. Nadat het is voltooid, ziet u het onderstaande meldingsdialoogvenster.
Omdat we tabellen en gegevens aan de database hebben toegevoegd, worden er gevraagd om die wijzigingen op te slaan, dus we klikken op "opslaan" om dit te doen.
Het hoofdvenster DB4S geeft nu de structuur van onze database weer.
Er zijn twee tafels gemaakt, hoewel er slechts een definitie voor één in het SQL-bestand was. Dit komt omdat het veld "ID" is gedefinieerd als een automatisch incrementerend veld. Het wordt automatisch toegevoegd wanneer een nieuw record aan de database wordt toegevoegd. SQLITE Maakt een tabel om automatisch incrementerende velden bij te houden.
Klik op het tabblad "Bladeren" om uw nieuw toegevoegde records te bekijken.
Natuurlijk ligt de kracht van een database in zijn vermogen om records te zoeken en te extraheren. Met een SQL-ingeschakelde database gebruiken we de SQL-taal om dit te doen. Om aan de slag te gaan, het tabblad "SQL" uitvoeren.
We hebben de volgende SQL-opdracht toegevoegd:
Selecteer * van Account_Details waar last_name zoals "% ll%" bestelling per staat
Dit zal zoeken naar mensen met een dubbele "L" in hun achternaam en de resultaten worden gesorteerd op de staat. Klik op de blauwe pijl (het ziet eruit als een knop "PLAY") om uw SQL-opdracht uit te voeren. De resultaten worden weergegeven in het onderste deelvenster.
We hebben vier records die dubbele "L" in de achternaam bevatten en ze worden alfabetisch gesorteerd op de staat, van Arizona naar Wisconsin.
Een databasetabel importeren vanuit een CSV-bestand
We kunnen ook tabellen van geschikte CSV-bestanden importeren. De handige manier om dit te doen, is om de namen van de tabelveld in het CSV-bestand als de eerste rij tekst te hebben. Hieronder staat een kort gedeelte van een CSV-bestand.
De eerste regel bevat de veldnamen: First_Name, Last_Name, gemaakt, e-mail, staat en ID. De andere lijnen houden de gegevenswaarden voor elke record die aan de tabel worden toegevoegd. Dit is dezelfde gegevens als eerder; alleen het bestandsformaat is veranderd.
Wanneer u CSV-gegevens importeert, moet u een lege database te maken, zodat je iets om het te importeren te hebben. Om dit te doen, klikt u op “New Database” op de werkbalk.
Een file-save dialoogvenster geopend. Geef uw nieuwe database en beslissen waar op te slaan. We gaan onze noemen “howtogeek.sqlite3” en opslaan in onze home directory.
Wanneer het dialoogvenster "Tabeldefinitie" verschijnt, klikt u op "Annuleren". Klik in het hoofdvenster DB4S op Bestand & GT; Import & GT; Tabel van CSV-bestand. Een dialoogvenster Bestandsselectie wordt geopend waarin u uw CSV-bestand kunt kiezen.
In ons voorbeeld wordt het "gebruikers.csv" genoemd en het bevindt zich in de root van onze thuismap. Klik op "Openen" en een voorbeelddialoogvenster lijkt te tonen hoe DB4S de CSV-gegevens zal interpreteren.
De naam van het bestand wordt gebruikt als de naam van de tabel. U kunt dit bewerken als u wilt, zorg ervoor dat u het selectievakje naast "kolomnamen in de eerste regel" selecteert.
Klik op "OK" (het is off-screen in de bovenstaande afbeelding). De gegevens worden geïmporteerd en, als alles goed gaat, moet u het dialoogvenster "Importeren voltooid" bekijken; Klik OK."
Klik op "Bladeren van gegevens" en u ziet de geïmporteerde gegevens.
We hebben nog steeds een kleine tweak om te maken. Klik op het tabblad "Database-structuur", selecteer de naam van de tabel en klik vervolgens op "Tabel wijzigen" in de werkbalk.
Selecteer in het dialoogvenster "Tabel Definitie", selecteert u het selectievakje "AI" (Auto-incrementing) in het veld "ID".
Het selectievakje "PK" (primaire sleutel) wordt automatisch voor u geselecteerd; Klik OK." Dit stelt het veld "ID" om automatisch te zijn. We kunnen nu een nieuw record toevoegen aan de database om te controleren of het werkt.
Klik op het tabblad "SQL" uitvoeren en typ vervolgens de volgende SQL in het bovenste deelvenster (merk op dat we waarden leveren voor alle velden behalve "ID"):
Insert in "Gebruikers"
("First_Name", "Last_Name", "Created", "E-mail", "State")
Waarden ('Dave', 'McKay', '12/08/2020', '[email protected]', 'Idaho');
Klik op de blauwe pijl (die een PLAY-knop ziet) om uw SQL-opdracht uit te voeren. Klik op "Bladeren van gegevens" en scroll naar de onderkant. U moet uw nieuw toegevoegde record zien met een automatisch opgegeven "ID" -veld met een waarde die er een hoger is dan de vorige hoogste "ID" -waarde.
Een database handmatig maken
Als u geen SQL- of CVS-bestand heeft om te importeren, moet u uw database handmatig maken. Om aan de slag te gaan, klikt u op "Nieuwe database" en wordt een dialoogvenster Bestand opslaan weergegeven. Typ de naam van uw nieuwe database en waar u het wilt opslaan.
We hebben Ours "Geeksrock.sqlite3" genoemd en we sparen het in de map "Documenten". Nadat u uw database hebt benoeven en naar de locatie navigeren waarin u het wilt opslaan, klikt u op "Opslaan".
Wanneer wordt gevraagd om uw keuzes te bevestigen, klikt u nogmaals op "Opslaan".
Het dialoogvenster "Tabeldefinitie bewerken verschijnt. Noem uw nieuwe tabel (we hebben de "Eagles" genoemd) en klik vervolgens op "Veld toevoegen". U kunt nu een naam voor het veld typen en het type informatie selecteren dat het in het vervolgkeuzemenu "Type" bevat.
We hebben een tekstveld toegevoegd om de naam van de adelaar en een echt (drijvend punt) numeriek veld vast te houden om de WINGSPAN vast te houden.
Met de vinkjes en andere opties naast elk veld kunt u het volgende gedrag toevoegen:
- Nn (niet null): Wanneer deze optie is ingesteld, kan het veld niet leeg blijven. Als u een record probeert toe te voegen zonder een waarde voor dit veld te verstrekken, wordt deze afgewezen.
- Pk (Hoofdsleutel): Een veld (of een groep van velden) die een unieke identificatie biedt voor de records in de tabel. Dit kan een eenvoudige numerieke waarde zijn, zoals de automatische intensieve integer-velden die we hierboven hebben behandeld. In een tabel met gebruikersaccounts is het misschien een gebruikersnaam. Er kan slechts één primaire sleutel in een tabel zijn.
- Ai (Auto-incrementing): Numerieke velden kunnen automatisch worden ingevuld, met de volgende hoogste ongebruikte waarde. We gebruikten dit in het veld "ID" in het voorbeeld dat we hierboven hebben gedekt.
- U (uniek): Dit veld in elke record moet een unieke waarde bevatten, wat betekent dat er geen duplicaten op dit gebied in de tabel kunnen zijn.
- Standaard: Er wordt een standaardwaarde verstrekt als een record wordt toegevoegd dat geen waarde heeft op dit gebied.
- Rekening: Een veld kan een controle hebben uitgevoerd wanneer een record wordt toegevoegd. U kunt bijvoorbeeld controleren of de waarde op een veld Telefoonnummer minimaal 10 tekens heeft.
-
Collatie:
SQLITE kan verschillende methoden van stringvergelijking gebruiken. De standaard is
Binair. Andere opties zijnGEEN GEVAL, wat case-ongevoelig is, enRtrim, wat trailing witte ruimte negeert. In de meeste gevallen kunt u dit achterlaten aan de standaardwaarde. - Vreemde sleutel: Een veld of een groep velden in een record die een sleutel in een andere tabel moet matchen. In een database van workshophulpmiddelen kunt u bijvoorbeeld een tabel met individuele hulpmiddelen en een andere tabel met gereedschapscategorieën. Als de gereedschapscategorieën "hamer" zijn "" en "schroevendraaier", kunt u geen record van het type "beitel".
Klik op "OK" nadat u de gewenste velden hebt toegevoegd. Nadat uw database is gemaakt en uw eerste tabel wordt toegevoegd, kunt u enkele records toevoegen.
In het tabblad "SQL" uitvoeren, hebben we de SQL-invoegverklaring verschillende keren gebruikt om een aantal records toe te voegen aan de tabel.
We kunnen ook het tabblad "Bladeren van gegevens" gebruiken om onze nieuwe records te bekijken.
Als u liever nieuwe records via de gebruikersinterface toevoegt, klikt u op "Nieuw record" op de werkbalk. U kunt vervolgens de waarden voor het nieuwe record invoeren zonder SQL te begrijpen.
Databases van andere applicatie
U kunt ook DB4S gebruiken om de SQLITE-databases te bekijken die behoren tot andere toepassingen. Onderzoeken van de structuur of inhoud van andere databases kan leerzaam zijn (of gewoon interessant). Het is belangrijk dat u echter geen wijzigingen aanbrengt in databases die eigendom zijn van andere toepassingen, of u kunt de werking van die aanvraag negatief beïnvloeden.
Laten we eens kijken naar een van de SQLITE-databases Firefox creëert en onderhoudt. Klik op "Database openen" op de werkbalk en er verschijnt een open dialoogvenster met bestand. Firefox houdt zijn bestanden in een directory genaamd "Firefox", wat in een verborgen map is genaamd ".mozilla" die in uw thuismap zit.
Op onze testmachine vonden we de Firefox SQLITE-databases in deze plaats: "Home / Dave / .mozilla / Firefox / VPVUY438.default-release"; De jouwe bevindt zich op een vergelijkbare locatie.
We gaan de database "Cookies.sqlite" openen, dus we markeren het bestand en klik vervolgens op "Openen". Met de geopende database kunt u de tabelstructuur, velddefinities en gegevens onderzoeken.
Hier kunnen we een verscheidenheid aan Google- en YouTube-cookies zien.
Exporteren biedt inzichten
Exporteren van een database (door op Bestand en GT te klikken; Export & GT; database naar SQL-bestand) is ook nuttig. Door naar de SQL-dump van een database te kijken, ziet u het volledige schema van de database weergegeven in SQL-uitspraken.