Создать пустую базу данных sqlite из командной строки

Возможно ли создать пустую базу данных sqlite3 из командной строки (например, sqlite3 <someoption> dbname), которая создаст для меня файл базы данных, пустой из любых таблиц, чтобы я мог получить доступ к нему из другого редактора SQL?

В настоящее время, когда я делаю sqlite3 dbname, я получаю приглашение sqlite, из которого я могу сделать CREATE TABLE ..., но если я этого не сделаю, когда я выйду, файл не будет создан. Поэтому я ищу одну команду, которая создала бы пустую базу данных для меня без необходимости создавать по крайней мере одну таблицу на этом шаге.

Ответы

Ответ 1

Я не думаю, что есть способ сделать это только в одном утверждении.

В Linux я бы обходился так:

sqlite3 aFile.db "create table aTable(field1 int); drop table aTable;"

Это автоматически создаст необходимый файл с таблицей в нем, а затем удалит его, оставив файл базы данных без таблиц. Это самое близкое, что я знаю.

В любом случае, я думаю, что большинство редакторов даже примет пустой файл. Попробуйте.

Ответ 2

Вы также можете вызвать .databases при вводе командной строки.

Или:

$sqlite3 test.db ".databases"

Ответ 3

Просто создайте пустой файл.

> test.db

Символ " > " здесь означает перенаправление.

Ответ 4

Простой способ находится в bash, используйте команду

touch file.db

Это просто создаст файл размера 0 и может быть использован как пустой файл sqlite.