| projekt ordlista, 2 | E-post |
|
Del 2 i artikelserien 'projekt ordlista'. Läs även del 1. Nu ska listan med ord in i tabellen 'word'. Fast tabellen word vill ju ha två kolumner - 'id' och 'word'. $ cat -n sorted.lst >word.lst Så! Nu har varje rad ett nummer. Tyvärr är de skiftade åt höger och flera rader innehåller inledande mellanslag. Jag öppnar listan i vim och skriver.
:%s/^s*//
:%s/s/,/
:wq
(Den första raden raderar inledande mellanslag. Den andra byter ut mellanslaget mellan siffra och ord mot ett kommatecken. Den tredje raden sparar och avslutar vim.) Så startar jag sqlite igen. $ sqlite3 words.db sqlite> .separator , sqlite> .import word.lst word sqlite> .quit (Den första raden sätter avskiljare till kommatecken. Den andra importerar filen word.lst till tabellen 'word'. Den tredje avslutar sqlite3). Nu ska jag testa lite : Öppna databasen: sqlite3 words.db I mitt fall fick ordet 'ra' id 232308 Lägg till ledtrådar för ordet i tabellen 'leads' insert into leads values('Drev med norrmän', 232308); insert into leads values('Thors båt', 232308); insert into leads values('Egyptisk solgud', 232308); insert into leads values('Radium', 232308); Kollar att det funkar, att jag får relevant utdata : Avsluta sqlite3 med ett .quit Jag kan ju passa på att visa ett annat sätt att anropa sqlite :
$ sqlite3 -html words.db "select word.word, lead.lead from word,
lead where (word.id = lead.wordID and lead like '%solgud%');"
<TR><TD>ra</TD>
<TD>Egyptisk solgud</TD>
</TR>
Växeln -html är ju bra om man ska presentera utdata i en tabell på en webbsida. I del 3 av denna artikelserie bygger jag ett enkelt gränssnitt i BASH. Läs mer om sqlite3
Kommentarer (0)
![]() Skriv kommentar
|
|||
| < Föregående | Nästa > |
|---|





