sqlite3 - как вывести имя базы данных с помощью команды .databases? - PullRequest
15 голосов
/ 09 октября 2011

Я более свежий в рельсах и SQLite.

Вот мой сценарий: на моем компьютере с Windows Vista было установлено sqlite3.Код приложения блога также был реализован на c:\rails\blog.Я открыл командную строку и сразу перешел к c:\rails\blog\db.Я запустил команду sqlite3, чтобы войти в консоль базы данных.когда я использовал команду .databases, база данных не была указана?Зачем?Что я сделал не так?

Ответы [ 3 ]

19 голосов
/ 09 октября 2011

Вы должны указать имя базы данных (путь и) для команды 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> 
18 голосов
/ 09 октября 2011

Возможно, вы не открыли саму базу данных

sqlite3 database.db

Помните, что в SQLite база данных - это просто файл. Пока вы не откроете или не прикрепите один, открытого нет. С другой стороны, когда вы просто открываете базу данных, .databases кажется бесполезным, потому что вы знаете, , какую вы только что открыли.

1 голос
/ 20 апреля 2015

Когда вы запускаете sqlite3 без параметров, создается временная база данных, которая будет уничтожена при выходе из программы. Это то, что ты сделал.

Для доступа к базе данных необходимо указать имя файла, в котором хранится база данных.

$ sqlite3 my.db
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...