首页 游戏 软件 排行 专题
SQLite3
  • SQLite33.17.0 绿色版

  • 大小:4.0M更新:2017-02-23 11:49
  • 类别:数据库类系统:WinAll, Win7

一个既小又好用的关系型数据库,代替MySql。已经捆绑到了PHP5.0上,使用就像ASP和ACCESS结合一样方便。

SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快

现在好多程序的配置文件等都是采用这个SQLite来存储的,比如大名鼎鼎的FireFox....

SQLITE操作入门:

sqlite提供的是一些C函数接口,你可以用这些函数操作数据库。通过使用这些接口,传递一些标准 sql 语句(以 char * 类型)给 sqlite 函数,sqlite 就会为你操作数据库。

sqlite 跟MS的access一样是文件型数据库,就是说,一个数据库就是一个文件,此数据库里可以建立很多的表,可以建立索引、触发器等等,但是,它实际上得到的就是一个文件。备份这个文件就备份了整个数据库。

sqlite 不需要任何数据库引擎,这意味着如果你需要 sqlite 来保存一些用户数据,甚至都不需要安装数据库(如果你做个小软件还要求人家必须装了sqlserver 才能运行,那也太黑心了)。

sqlite3一些常用Sql语句操作:

创建表:  create  table 表名(元素名 类型,…); 

删除表:  drop  table 表名;              

插入数据: insert  into 表名 values(, , ,) ;   

创建索引: create [unique] index 索引名on 表名(col….); 

删除索引: drop index 索引名(索引是不可更改的,想更改必须删除重新建)
删除数据: delete from 表名;              

更新数据: update 表名 set 字段=’修改后的内容’ where 条件; 

增加一个列: Alter table 表名 add column 字段 数据类型;  

选择查询:   select 字段(以”,”隔开) from 表名 where 条件; 

日期和时间: Select datetime('now') 

日期:   select date('now');        
时间:  select time('now');   

总数:select count(*) from table1;
求和:select sum(field1) from table1;
平均:select avg(field1) from table1;
最大:select max(field1) from table1;
最小:select min(field1) from table1;

排序:select 字段 from table1 order by 字段(desc或asc)  ;(降序或升序)

分组:select 字段 from table1 group by 字段,字段…  ;

限制输出:select 字段 from table1 limit x offset y;

    = select 字段 from table1 limit y , x;

(备注:跳过y行,取x行数据)

(操作仍待完善)…

SQLite支持哪些数据类型些?

NULL  值为NULL
INTEGER 值为带符号的整型,根据类别用1,2,3,4,6,8字节存储
REAL  值为浮点型,8字节存储
TEXT  值为text字符串,使用数据库编码(UTF-8, UTF-16BE or UTF-16-LE)存储
BLOB  值为二进制数据,具体看实际输入

但实际上,sqlite3也接受如下的数据类型:
smallint   16 位元的整数
interger    32 位元的整数
decimal(p,s)  p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值 ,s是指小数点後有几位数。如果没有特别指定,则系统会设为 p=5; s=0 。
float     32位元的实数。
double     64位元的实数。
char(n)     n 长度的字串,n不能超过 254。
varchar(n)   长度不固定且其最大长度为 n 的字串,n不能超过 4000。
graphic(n)   和 char(n) 一样,不过其单位是两个字元 double-bytes, n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。
vargraphic(n)  可变长度且其最大长度为 n 的双字元字串,n不能超过 2000。
date     包含了 年份、月份、日期。
time     包含了 小时、分钟、秒。
timestamp   包含了 年、月、日、时、分、秒、千分之一秒。

如果将声明表的一列设置为 INTEGER PRIMARY KEY,则具有:

1.每当你在该列上插入一NULL值时, NULL自动被转换为一个比该列中最大值大1的一个整数;

2.如果表是空的, 将会是1;

算术函数

abs(X)返回给定数字表达式的绝对值。

max(X,Y[,...])返回表达式的最大值。

min(X,Y[,...])返回表达式的最小值。

random(*)返回随机数。

round(X[,Y])返回数字表达式并四舍五入为指定的长度或精度。

字符处理函数

length(X)返回给定字符串表达式的字符个数。

lower(X)将大写字符数据转换为小写字符数据后返回字符表达式。

upper(X)返回将小写字符数据转换为大写的字符表达式。

substr(X,Y,Z)返回表达式的一部分。

randstr()

quote(A)

like(A,B)

确定给定的字符串是否与指定的模式匹配。

glob(A,B)

条件判断函数

coalesce(X,Y[,...])

ifnull(X,Y)

nullif(X,Y)

集合函数

avg(X)返回组中值的平均值。

count(X)返回组中项目的数量。

max(X)返回组中值的最大值。

min(X)返回组中值的最小值。

sum(X)返回表达式中所有值的和。

其他函数

typeof(X)返回数据的类型。

last_insert_rowid()返回最后插入的数据的 ID 。

sqlite_version(*)返回 SQLite 的版本。

change_count()返回受上一语句影响的行数。

last_statement_change_count()

二.有关事务的操作

(成批操作的时候,启动事务,比不启动事务快n倍)

开始事物处理

BEGIN  TRANSACTION;

…………..

进行对数据库操作

…………..

事物提交

COMMIT;

具体事例如下:

假设有一个 t1 表,其中有 "a", "b", "c" 三列, 如果要删除列 c ,以下过程描述如何做:

BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;

更新日志:

A command-line shell for accessing and modifying SQLite databases. This program is compatible with all versions of SQLite through 3.7.15.2 and beyond.

玩家留言 跟帖评论
第 5 楼 网友 2018/6/9 8:35:38
直接解压后,点击sqlite3.exe 就可以用了,谢谢

支持( 0 ) 盖楼(回复)

第 4 楼 网友 2018/6/9 8:31:07
软件很不错,谢谢了

支持( 0 ) 盖楼(回复)

第 3 楼 网友 2018/4/9 15:32:03
怎么引入命令

支持( 0 ) 盖楼(回复)

第 2 楼 网友 2013/11/19 17:16:28
不好意思求解读,怎么用了啊

支持( 0 ) 盖楼(回复)

第 1 楼 网友 2013/7/19 10:45:26
很不错的软件哦

支持( 0 ) 盖楼(回复)

查看更多评论
相关应用
猜你喜欢

开发者其他应用

同类下载
其它版本