Sqlite是一款轻型的数据库,实现了多数SQL-92标准,包括事务(原子性,一致性,隔离性和持久性 ACID),触发器与多数复杂查询。对于一个移动手持设备的应用开发者,Sqlite是居家旅行必备数据库。言归正传。

        在Ubuntu 12.04下进行Sqlite安装及使用的简单实例如下:

1.  在终端下输入以下命令

sudo apt-get install sqlite3

之后在终端下输入如下命令,查看下安装好的sqlite的版本

sqlite3 -version

我的环境下得到版本信息如下,表明sqlite3安装好了。
3.7.9 2011-11-01 00:52:41 c7c6050ef060877ebe77b41d959e9df13f8c9b5e

2. 安装Sqlite3编译需要的工具包

如果,你需要的话可以安装该工具包。只是为了体验一把,可以不安装。该项是可选项。

sudo apt-get install libsqlite3-dev 

3. 创建数据库

在终端下使用命令行创建一个新的文件夹Databases, 并进入该文件夹

sxd@sxd-ThinkPad-T400:~$ mkdir Databases
sxd@sxd-ThinkPad-T400:~$ cd Databases/

之后在终端输入如下命令

sqlite3 test.db

若目录下存在test.db文件,则会打开该数据库文件,若不存在,则会创建一个数据库文件,并进入数据库操作。

sxd@sxd-ThinkPad-T400:~/Databases$ sqlite3 test.db
SQLite version 3.7.9 2011-11-01 00:52:41
Enter “.help” for instructions
Enter SQL statements terminated with a “;”
sqlite>

4. 查看数据库

sqlite> .database
seq  name             file                                                      
—  —————  ———————————————————-
0    main             /home/sxd/Databases/test.db                               
sqlite>

5.创建数据表sqlite> create table student(name varchar(10), age smallint);

6.查看数据表

查看数据库有那写数据表 可以用.table或者.tables

sqlite> .table
student  teacher
sqlite> .tables
student  teacher
sqlite>

7. 插入数据

sqlite> insert into student values(‘fck’, 21);
sqlite> insert into student values(“shit”,20);

8. 查询数据

sqlite> select * from student;
fck|21
shit|20

9. 退出数据库

sqlite> .exit;

10.  安装其它语言的支持

//PHP支持  

sudo apt-get install php5-sqlite 

//Ruby支持  

sudo apt-get install libsqlite3-ruby 

//Python支持  

sudo apt-get install python-pysqlite2 

11. 可视化工具

Ubuntu下sqlite3的可视化工具很多,这里我安装的是sqlitebrowser

在命令行下

sudo apt-get install sqlitebrowser

sqlitebrowser用法

在命令行下

sxd@sxd-ThinkPad-T400:~/Databases$ sqlitebrowser test.db


12. 删除表

drop table student

13. 删除数据库

SQLite无法同其他数据库那样删除数据库文件,即DROP DATABASE test;无效,但是我们可以直接像删除文件一样删除数据库文件,在/home/yourname/Databases下面删除test.db文件即可。

14. 一些有用的 SQLite 命令

显示表结构:
sqlite> .schema [table “” not found /]

获取所有表和视图:
sqlite > .tables

获取指定表的索引列表:
sqlite > .indices [table “” not found /]

导出数据库到 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

类似文章