2011-10-09 17 views
14

Jestem świeższa z szyn i SQLite.sqlite3 - jak wyświetlić nazwę bazy danych za pomocą polecenia .databases?

Oto mój scenariusz: Miałem sqlite3 zainstalowany na moim komputerze z systemem Windows Vista. Kod aplikacji bloga został również wdrożony pod numerem c:\rails\blog. Podniosłem mój wiersz polecenia i przeszedłem bezpośrednio do c:\rails\blog\db. Uruchomiłem polecenie sqlite3, aby wejść do konsoli bazy danych. Kiedy użyłem polecenia .databases, nie podano żadnej bazy danych? Czemu? Co zrobiłem źle?

Odpowiedz

17

Prawdopodobnie nie otworzył bazę samego

sqlite3 database.db 

Pamiętaj, że w SQLite A baza danych to tylko plik. Dopóki się nie otworzysz lub nie otworzysz ani jednego, nie ma otwartego. Z drugiej strony po otwarciu bazy danych .databases czuje się bezużyteczna, ponieważ wiesz, którą właśnie otworzyłeś.

17

Musisz podać ścieżkę do bazy danych (i) imię i nazwisko do polecenia sqlite3 np

Dev e$ sqlite3 my_test.db 
SQLite version 3.7.7 2011-06-23 19:49:22 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> .databases 
seq name    file              
--- --------------- ---------------------------------------------------------- 
0 main    /Users/e/Dev/my_test.db         
sqlite> 
1

Po uruchomieniu sqlite3 bez parametrów tworzona jest tymczasowa baza danych, która zostanie zniszczona zaraz po wyjściu z programu. Oto co zrobiłeś.

Aby uzyskać dostęp do bazy danych, należy podać nazwę pliku, który przechowuje bazę danych.

$ sqlite3 my.db 
Powiązane problemy