数据库工具: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) 如果不存在就创建
3.增加数据库表格中的字段
例子 数据库名Newdb 表格名city
二.查找
1.查找
select Distinct from 数据表 where 查询条件 order by field ASC|DESC group by field having 条件表达式
(1)distinct:
可以是 * 表示从整个数据库查找
也可以查找列 (多列用,号隔开比如
select ppc_id, ppc_name from category
(2)from,where,order by注意一点就是用模糊搜索的时候
“%建” 是查找 xxxx建的
“ 建%“是查找建xxxx的
”%建%“是查找含有建字的
排序用order by xx desc|asc
(3)group by、having
having count(*) > 1 表示过滤掉小于等于1
![](https://i-blog.csdnimg.cn/blog_migrate/69c23238b77d1fe49bb7aacca9168f70.png)
参考http://343766868.blog.163.com/blog/static/483140562013010104641294/
三.增删改
增加: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 = '苏州' andcityAddress = '江苏省'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 )wherecountry.countryName = 'China'
选出的结果总包含了2个表的信息,select table name,*from可以控制输出所需要的table信息
方式2:
left join
select *from cityleftjoin countryon city.abbreviation = country.abbreviationwherecountry.countryName = 'China'
方法3
多重select