一、引言
在移動(dòng)開(kāi)發(fā)中,通常會(huì)用到一些小型的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)管理。SQLite是一款十分小巧便捷的數(shù)據(jù)庫(kù),在iOS開(kāi)發(fā)中,原生框架也對(duì)其有很好的支持。
二、SQLite常用語(yǔ)句
數(shù)據(jù)庫(kù)存在的意義就在于其對(duì)數(shù)據(jù)的整合和管理,所以數(shù)據(jù)庫(kù)的核心操作無(wú)非是對(duì)數(shù)據(jù)進(jìn)行增,刪,改,查得操作。
1.建立數(shù)據(jù)表語(yǔ)句
一個(gè)數(shù)據(jù)庫(kù)文件中可以由一些表組成,通過(guò)下面的語(yǔ)句在數(shù)據(jù)庫(kù)文件中創(chuàng)建一張表:
復(fù)制代碼 代碼如下:
create table class(num integer PRIMARY KEY,name text NOT NULL DEFAULT "1班",count integer CHECK(count>10))
上面的語(yǔ)句代碼可以簡(jiǎn)化成如下的格式:
create table 表名(參數(shù)名1 類(lèi)型 修飾條件,參數(shù)名2,類(lèi)型 修飾參數(shù),···)
sqlite中支持如下的類(lèi)型:
smallint 短整型
integer 整型
real 實(shí)數(shù)型
float 單精度浮點(diǎn)
double 雙精度浮點(diǎn)
currency 長(zhǎng)整型
varchar 字符型
text 字符串
binary 二進(jìn)制數(shù)據(jù)
blob 二進(jìn)制大對(duì)象
boolean 布爾類(lèi)型
date 日期類(lèi)型
time 時(shí)間類(lèi)型
timestamp 時(shí)間戳類(lèi)型
關(guān)于修飾條件,常用的有如下幾種:
PRIMARY KEY:將本參數(shù)這個(gè)為主鍵,主鍵的值必須唯一,可以作為數(shù)據(jù)的索引,例如編號(hào)。
NOT NULL :標(biāo)記本參數(shù)為非空屬性。
UNIQUE:標(biāo)記本參數(shù)的鍵值唯一,類(lèi)似主鍵。
DEFAULT:設(shè)置本參數(shù)的默認(rèn)值
CHECK:參數(shù)檢查條件,例如上面代碼,寫(xiě)入數(shù)據(jù)是count必須大于時(shí)才有效。
2.添加數(shù)據(jù)
使用下面的語(yǔ)句來(lái)進(jìn)行數(shù)據(jù)行的添加操作:
復(fù)制代碼 代碼如下:
insert into class(num,name,count) values(2,"三年2班",58)
上面的語(yǔ)句代碼可以簡(jiǎn)化成如下格式:
復(fù)制代碼 代碼如下:
insert into 表名(鍵1,鍵2,···) values(值1,值2,···)
使用下面的語(yǔ)句進(jìn)行數(shù)據(jù)列的添加,即添加一個(gè)新的鍵:
復(fù)制代碼 代碼如下:
alter table class add new text
alter table 表名 add 鍵名 鍵類(lèi)型
3.修改數(shù)據(jù)
使用如下語(yǔ)句來(lái)進(jìn)行改操作:
復(fù)制代碼 代碼如下:
update class set num=3,name="新的班級(jí)" where num=1
update 表名 set 鍵1=值1,鍵2=值2 where 條件
where后面添加修改數(shù)據(jù)的條件,例如上面代碼修改num為1的班級(jí)的名字和mun值。
4.刪除數(shù)據(jù)
復(fù)制代碼 代碼如下:
delete from class where num=1
delete from 表名 where 條件
上面代碼刪除num為1的一條數(shù)據(jù)。
刪除一張表適用下面的語(yǔ)句:
復(fù)制代碼 代碼如下:
drop table class
drop table 表名
5.查詢操作
查詢操作是數(shù)據(jù)庫(kù)的核心功能,sqlite的許多查詢命令可以快捷的完成復(fù)雜的查詢功能。
查詢表中某些鍵值:
復(fù)制代碼 代碼如下:
select num from class
select 鍵名,鍵名··· from 表名
查詢?nèi)挎I值數(shù)據(jù):
復(fù)制代碼 代碼如下:
select * from class
select * from 表名
*是一個(gè)全通配符,代表不限個(gè)數(shù)任意字符
查詢排序:
復(fù)制代碼 代碼如下:
select * from class order by count asc
select 鍵名,鍵名,··· from 表名 order by 鍵名 排序方式
order by 后面寫(xiě)要進(jìn)行排序的鍵名,排序方式有 asc升序 desc降序
查找數(shù)據(jù)條數(shù)與查找位置限制:
復(fù)制代碼 代碼如下:
select * from class limit 2 offset 0
select 鍵名 from 表名 limit 最大條數(shù) offset 查詢起始位置
條件查詢:
復(fù)制代碼 代碼如下:
select * from class where num>2
select 鍵名 from 表名 where 條件
查詢數(shù)據(jù)條數(shù):
復(fù)制代碼 代碼如下:
select count(*) from class
select count(鍵名) from 表名
去重查詢:
復(fù)制代碼 代碼如下:
select distinct num from class
select distinct 鍵名 from 表名
三、MesaSQLite的簡(jiǎn)單使用方法
MesaSQLite是一款可視化的SQLite數(shù)據(jù)庫(kù)編輯軟件,使用十分方便。如下地址是下載鏈接:https://www.jb51.net/softs/419734.html。
1.創(chuàng)建數(shù)據(jù)庫(kù)文件
打開(kāi)MesaSQLite軟件,在導(dǎo)航欄中選擇File,選擇彈出菜單中的New DataBase創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù)文件,也可以選擇Open Database打開(kāi)一個(gè)數(shù)據(jù)庫(kù)。
注意:默認(rèn)創(chuàng)建的數(shù)據(jù)庫(kù)文件為rdb格式,手動(dòng)改成db格式即可。
2.創(chuàng)建表
MesaSQLite有兩種方式對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,一種是通過(guò)sql語(yǔ)句,一種是通過(guò)可視化的界面。在SQL Query工具窗口中,可以通過(guò)SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,如下圖:
或者在Structure工具窗口中進(jìn)行可視化的創(chuàng)建:
3.查詢操作
對(duì)于數(shù)據(jù)的查詢操作,同樣可以通過(guò)SQL Query工具通過(guò)語(yǔ)句進(jìn)行查詢或者在Content窗口中填寫(xiě)查詢條件進(jìn)行查詢,如下:
您可能感興趣的文章:- Mac中MariaDB數(shù)據(jù)庫(kù)的安裝步驟
- Mac安裝 mysql 數(shù)據(jù)庫(kù)總結(jié)
- Mac上Oracle數(shù)據(jù)庫(kù)的安裝及過(guò)程中一些問(wèn)題的解決
- 在Mac OS上安裝Oracle數(shù)據(jù)庫(kù)的基本方法
- Mac環(huán)境下php操作mysql數(shù)據(jù)庫(kù)的方法分享
- Mac Mysql數(shù)據(jù)庫(kù)中文亂碼問(wèn)題解決