Sqlite3 - как указать имя базы данных с помощью команды .databases?
Я более свежий из рельсов и SQLite.
Вот мой сценарий:
Я установил sqlite3
на моем компьютере с Windows Vista.
Код приложения блога также был реализован в c:\rails\blog
.
Я вывел свою командную строку и перешел непосредственно к c:\rails\blog\db
.
Я запустил команду sqlite3
, чтобы войти в консоль базы данных.
когда я использовал команду .databases
, база данных не была указана? Зачем?
Что я сделал неправильно?
Ответы
Ответ 1
Вероятно, вы не открыли базу данных
sqlite3 database.db
Помните, что в SQLite база данных - это просто файл. Пока вы не открываете или attach один, нет открытого. С другой стороны, когда вы просто открываете базу данных .databases
, это кажется бесполезным, потому что вы знаете, какой из них вы только что открыли.
Ответ 2
Вы должны указать имя базы данных (путь и) для команды sqlite3, например
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>
Ответ 3
При запуске sqlite3
без параметров создается временная база данных, которая будет уничтожена сразу после выхода программы. Это то, что вы сделали.
Чтобы получить доступ к базе данных, вам необходимо указать имя файла, содержащего базу данных.
$ sqlite3 my.db