我正在尝试彻底了解sqlite3,以便我可以通过DB Browser for SQLite(http://sqlitebrowser.org/)运行一些基本查询。
为此,我导入纽约出租车数据1个月,并尝试(数小时)在sqlite3上导入此数据。
.mode csv <Table_Name>
.import <path/to/file/data.csv> <Table_Name>
完成后,我发出以下SQL语句:
.out <path/to/file/data.db>
select * from <table_name>;
然后,当我尝试使用DB Browser for SQLite来验证数据库是否已填充数据时,我收到提示:
SQLCipher加密
请输入用于加密数据库的密钥
为什么会自动加密?有没有其他方法可以将我的csv文件存入数据库?
答案 0 :(得分:1)
该消息表示该文件未被识别为数据库文件。如果文件 加密,则会发生这种情况。
但在这种情况下,.output
生成的输出与屏幕上打印的输出相同。这根本不是数据库文件。
要获取整个数据库文件的副本,请使用.backup
。
要获取单个表的副本,请使用.dump tablename
,然后在新数据库中执行这些SQL语句:
sqlite3 data.db < file_generated_by_dump