# 如何使用增查改删
DarsMars
封装了对数据库数据的基本增加,查询,修改,删除操作,简单易用。
实际使用过程中,通常会与模型结合使用,以下只是基本操作的展示。
使用 Db
相关类,需要先导入 Db
类,假设你的项目名为 project_name
, 则需要如下导包
import 'package:project_name/bootstrap/db/Db.dart';
1
# 如何查询数据
假设数据库中有一张表,表名是 article
, 有 title
, desc
, create_time
等字段。
List<Map<String,dynamic>> list = await Db('article').select();
//转换成模型
List<Article> articleList = list.map((e) => Article.fromJson(ConvertHelper.keyToHump(e))).toList();
1
2
3
4
2
3
4
通过以上代码,即可查询出该表所有数据。它产生的 SQL
语句如下:
SElECT * FROM article
1
如果需要查询单条数据
Map<String,dynamic> item = await Db('article').find();
1
它产生的 SQL
语句如下:
SElECT * FROM article LIMIT 0,1
1
# 如何增加数据
Map<String,dynamic> data = {
'title': 'DartMars is greate',
'desc': 'Yes, it is',
'create_time': 1623766514
};
await Db('article').install(data);
1
2
3
4
5
6
7
2
3
4
5
6
7
通过以上代码,它产生的 SQL
语句为:
INSERT INTO article (title,desc,create_time) VALUES ('DartMars is greate','Yes, it is',1623766514)
1
# 如何修改数据
如果需要修改 id
为 1
的数据
List<DbColumn> condition = [
DbColumn('id', '=', 1),
];
Map<String,dynamic> data = {
'title': 'DartMars is wondeful',
};
await Db('article').where(condition).update(data);
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
通过以上代码,它产生的 SQL
语句为:
UPDATE article SET title = 'DartMars is wondeful' WHERE id = 1
1
注意,请记得导入 DbColumn
依赖文件
# 如何删除数据
如果需要删除 id
为 1
的数据
List<DbColumn> condition = [
DbColumn('id', '=', 1),
];
await Db('article').where(condition).delete();
1
2
3
4
5
2
3
4
5
通过以上代码,它产生的 SQL
语句为:
DELETE FROM article WHERE id = 1
1
注意,请记得导入 DbColumn
依赖文件
# 如何使用原生查询
如果使用原生查询,可以使用 .query
String sql = 'SELECT * FROM article';
await Db.query(sql);
1
2
3
2
3
通过以上代码,它产生的 SQL
语句为:
SELECT * FROM article
1