我是数据库新手。我正在尝试在其中创建数据库和表。 但退出sqlite后无法保存并再次打开。 我在centOS上使用sqlite3 3.6.20,当我输入以下命令
.save ex1.db or .open ex1.db
它将打印以下错误消息。
Error: unknown command or invalid arguments: "save". Enter ".help" for help
Error: unknown command or invalid arguments: "open". Enter ".help" for help
当打印.help 它不会显示任何与保存和打开现有数据库相关的命令。 提前谢谢。
答案 0 :(得分:16)
我正在尝试在其中创建数据库和表。但是在退出sqlite后无法保存并再次打开。
您无需保存。每个事务都写入磁盘。 (或多或少。)
要创建数据库“test.sl3”,您可以执行此操作。 (从命令行开始。程序以相同的方式工作。)
$ sqlite3 test.sl3
SQLite version 3.8.7.2 2014-11-18 20:57:56
Enter ".help" for usage hints.
sqlite> create table test (test_id integer primary key);
sqlite> insert into test values (1);
sqlite> select * from test;
1
.quit
否.save
。现在再次加载数据库。
$ sqlite3 test.sl3
SQLite version 3.8.7.2 2014-11-18 20:57:56
Enter ".help" for usage hints.
sqlite> select * from test;
1
数据仍在那里。
答案 1 :(得分:5)
如果你做了很多工作并且你没有预先提供文件名并且你在.save
命令尚未可用的版本中工作(你引用sqlite3 3.6.20
没有知道它,我也没有在sqlite3 version 3.8.2
中看到它你可以使用.backup
命令
sqlite> .help
[...]
.backup ?DB? FILE Backup DB (default "main") to FILE
$ sqlite3
[...]
sqlite> create table mytable ( column1 text, column2 integer );
sqlite> insert into mytable values ( 'ENTRY1', 1 );
sqlite> insert into mytable values ( 'ENTRY2', 2 );
sqlite> .backup main temp.db
sqlite> .quit
$ sqlite3 temp.db
[...]
sqlite> .schema
CREATE TABLE mytable ( column1 text, column2 integer );
sqlite> select * from mytable;
column1 column2
---------- ----------
ENTRY1 1
ENTRY2 2
答案 2 :(得分:2)
答案 3 :(得分:0)
使用Sqlite3 ex1.db
打开数据库。之后,所有查询将在您的数据库中生效。