前言部分
本文非原創 文章摘自:http://m.blog.csdn.net/blog/wsxzk123/17282325
數據庫工具:MesaSQLite
一.創建數據庫
1.創建數據庫
MesaSQLite工具 File-NewDataBase 創建出新的數據庫(Newdb.rdb),這里我要的是.db的文件,自己手動把文件名改為.db。
2.創建table
進入MesaSQLite,選中structure,
選中+增加一個表格(city)
也可以:createtable city (countryName varchar) 直接創建會覆蓋掉原來的內容或者顯示語法錯誤
或者用create table if not exists city(countryName varchar) 如果不存在就創建
例如 數據庫名Newdb 表格名city
3.增加數據庫表格中的字段
二.查找
1)、查找表達式
select Distinct from 數據表 where 查詢條件 order by field ASC|DESC group by field having 條件表達式
2)、distinct:表示查詢的字段去除重復數; 可以是 * 表示從查詢數據表中的所有字段
也可以查找列 (多列用,號隔開比如
select ppc_id, ppc_name from category as 'XX' 表示給該查詢字段取一個別名。
3)、from,where,order by注意一點就是用模糊搜索的時候
“%建” 是查找 xxxx建的
“ 建%“是查找建xxxx的
”%建%“是查找含有建字的
排序用order by xx desc|asc
4)、group by、having
having count(*) > 1 表示過濾掉小於等於1
三.增刪改
增加:insert
insertinto city (serial,name,cityID,cityAddress,level,amount)values(12,'蘇州',103,'江蘇省',1,10)
增加一列:
altertable countryadd abbreviation varchar
刪除:delete 刪除一列 (drop table)可以刪掉某個表
原來的表格數據如上:
更改:update 例如: update cityset name = "大理" ,cityID = 106,cityAddress = '雲南省'where name = '蘇州' and cityAddress = '江蘇省'and cityID = 103
原來的數據如上:
SQLite 有有限地 ALTER TABLE 支持。你可以使用它來在表的末尾增加一列,可更改表的名稱。對列的刪改、重命名操作,無法通過alter table的方式
只能通過一種間接的辦法去做了,不管是重命名列還是刪除列。
比如說你要修改的表名是A,方法步驟如下:
1.新建一個臨時表T,這個T和表A具有相同的列。
2.把A中所有的數據都通過insert語句插入到T中
3.刪除表A
4.新建表A,這時表A的列名就是你想要的結果,以前想修改的列名是什么,這時候就定義成什么,以前要刪除的某個列,那么在定義的時候就不定義它。
5.恢復數據,把數據通過insert語句插入A,結構是insert into A select ... from tablen T
6.刪除臨時表T。
引擎會自動產生一個sqlite_sequence表,用於記錄每個表的自增長字段的已使用的最大值,用戶可以看到,並可以用使用Update、Delete和Insert操作,但不建議這么使用,這會讓引擎混亂。如果使用rowid,也會有這么一個內部表,用戶可以維護rowid值,但看不到。
MesaSQLite聯表查詢
先給出2個表單
方式1:inner join
格式為
from (((表1 inner join 表2 on 表1.字段號=表2.字段號) inner join 表3 on 表1.字段號=表3.字段號) inner join 表4 on 表1.字段號=表4.字段號) inner join 表5 on 表1.字段號=表5.字段號 where ......
select *from (cityinnerjoin countryon city.abbreviation = country.abbreviation )where country.countryName = 'China'
選出的結果總包含了2個表的信息,select table name,*from可以控制輸出所需要的table信息
方式2:
left join
select *from cityleftjoin countryon city.abbreviation = country.abbreviationwhere country.countryName = 'China'
方法3
多重select