对SQLite文明已久,却是从来没使用过,今天就来安装试用下。
一、安装
下载地址:http://www.sqlite.org/download.html
将Precompiled Binaries for Windows下的包下载下来sqlite-dll-win64-x64-3150100.zip、sqlite-tools-win32-x86-3150100.zip
sqlite-dll-win64-x64-3150100.zip包含.def、.dll两个文件
sqlite-tools-win32-x86-3150100.zip包含三个执行文件exe
将它们一起解压到D:\sqlite文件夹,配置环境变量PATH后追加“D:\sqlite;”
如果你想从任何目录下运行CLP,需要将该文件复制到Windows系统路径下。默认情况下,Windows中工作的路径是根分区下的(C:\Windwos\System32)。
二、运行
打开sqlite3.exe,自动调出Windows命令行窗口。当SQLite命令行提示符出现时,输入.help,将出现一列类似相关命令的说明。输入.exit后退出程序。
三、简单操作
入门教程:http://www.runoob.com/sqlite/sqlite-commands.html
1. 新建一个数据库文件
>命令行进入到要创建db文件的文件夹位置
>使用命令创建数据库文件: sqlite3 所要创建的db文件名称
>使用命令查看已附加的数据库文件: .databases
2. 打开已建立的数据库文件
>命令行进入到要打开的db文件的文件夹位置
>使用命令行打开已建立的db文件: sqlite3 文件名称(注意:假如文件名称不存在,则会新建一个新的db文件)
3. 查看帮助命令
>命令行直接输入sqlite3,进去到sqlite3命令行界面
>输入.help 查看常用命令
创建表:
- sqlite> create table mytable(id integer primary key, value text);
- 2 columns were created.
该表包含一个名为 id 的主键字段和一个名为 value 的文本字段。
注意: 最少必须为新建的数据库创建一个表或者视图,这么才能将数据库保存到磁盘中,否则数据库不会被创建。
接下来往表里中写入一些数据:
- sqlite> insert into mytable(id, value) values(1, ‘Micheal’);
- sqlite> insert into mytable(id, value) values(2, ‘Jenny’);
- sqlite> insert into mytable(value) values(‘Francis’);
- sqlite> insert into mytable(value) values(‘Kerk’);
查询数据:
- sqlite> select * from test;
- 1|Micheal
- 2|Jenny
- 3|Francis
- 4|Kerk
设置格式化查询结果:
- sqlite> .mode column;
- sqlite> .header on;
- sqlite> select * from test;
- id value
- ———– ————-
- 1 Micheal
- 2 Jenny
- 3 Francis
- 4 Kerk
.mode column 将设置为列显示模式,.header 将显示列名。
修改表结构,增加列:
- sqlite> alter table mytable add column email text not null ” collate nocase;;
创建视图:
- sqlite> create view nameview as select * from mytable;
创建索引:
- sqlite> create index test_idx on mytable(value);
显示表结构:
- sqlite> .schema [table]
获取所有表和视图:
- sqlite > .tables
获取指定表的索引列表:
- sqlite > .indices [table ]
导出数据库到 SQL 文件:
- sqlite > .output [filename ]
- sqlite > .dump
- sqlite > .output stdout
从 SQL 文件导入数据库:
- sqlite > .read [filename ]
格式化输出数据到 CSV 格式:
- sqlite >.output [filename.csv ]
- sqlite >.separator ,
- sqlite > select * from test;
- sqlite >.output stdout
从 CSV 文件导入数据到表中:
- sqlite >create table newtable ( id integer primary key, value text );
- sqlite >.import [filename.csv ] newtable
备份数据库:
- /* usage: sqlite3 [database] .dump > [filename] */
- sqlite3 mytable.db .dump > backup.sql
恢复数据库:
- /* usage: sqlite3 [database ] < [filename ] */
- sqlite3 mytable.db < backup.sql
最后推荐一款管理工具 Sqlite Developer
参考文章:http://database.51cto.com/art/201205/335411.htm