当前位置:数据库 > SQLite >>

SQLite3的用法

SQLite3的用法
 
建立数据库档案 
用sqlite3建立数据库的方法很简单,只要在shell下键入(以下$符号为shell提示号,请勿键入): 
 
$ sqlite3 foo.db如果目录下没有foo.db,sqlite3就会建立这个数据库。sqlite3并没有强制数据库档名要怎么取,因此如果你喜欢,也可以取个例如foo.icannameitwhateverilike的档名。 
 
在sqlite3提示列下操作 
进入了sqlite3之后,会看到以下文字: 
 
SQLite version 3.1.3Enter ".help" for instructionssqlite> 这时如果使用.help可以取得求助,.quit则是离开(请注意:不是quit) 
 
SQL的指令格式 
所以的SQL指令都是以分号(;)结尾的。如果遇到两个减号(--)则代表注解,sqlite3会略过去。 
 
 
建立资料表 
假设我们要建一个名叫film的资料表,只要键入以下指令就可以了: 
 
create table film(title, length, year, starring);这样我们就建立了一个名叫film的资料表,里面有name、length、year、starring四个字段。 
 
这个create table指令的语法为: 
 
create table table_name(field1, field2, field3, ...);table_name是资料表的名称,fieldx则是字段的名字。sqlite3与许多SQL数据库软件不同的是,它不在乎字段属于哪一种资 料型态:sqlite3的字段可以储存任何东西:文字、数字、大量文字(blub),它会在适时自动转换。 
 
 
 
建立索引 
如果资料表有相当多的资料,我们便会建立索引来加快速度。好比说: 
 
create index film_title_index on film(title);意思是针对film资料表的name字段,建立一个名叫film_name_index的索引。这个指令的语法为 
 
create index index_name on table_name(field_to_be_indexed);一旦建立了索引,sqlite3会在针对该字段作查询时,自动使用该索引。这一切的操作都是在幕后自动发生的,无须使用者特别指令。 
 
 
加入一笔资料 
接下来我们要加入资料了,加入的方法为使用insert into指令,语法为: 
 
insert into table_name values(data1, data2, data3, ...);例如我们可以加入 
 
insert into film values ('Silence of the Lambs, The', 118, 1991, 'Jodie Foster');insert into film values ('Contact', 153, 1997, 'Jodie Foster');insert into film values ('Crouching Tiger, Hidden Dragon', 120, 2000, 'Yun-Fat Chow');insert into film values ('Hours, The', 114, 2002, 'Nicole Kidman');如果该字段没有资料,我们可以填NULL。 
 
查询资料 
讲到这里,我们终于要开始介绍SQL最强大的select指令了。我们首先简单介绍select的基本句型: 
 
select columns from table_name where expression;最常见的用法,当然是倒出所有数据库的内容: 
 
select * from film;如果资料太多了,我们或许会想限制笔数: 
 
select * from film limit 10;或是照着电影年份来排列: 
 
select * from film order by year limit 10;或是年份比较近的电影先列出来: 
 
select * from film order by year desc limit 10;或是我们只想看电影名称跟年份: 
 
select title, year from film order by year desc limit 10;查所有茱蒂佛斯特演过的电影: 
 
select * from film where starring='Jodie Foster'
 
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,