重庆网站建设服务商城网站模板库
- 作者: 五速梦信息网
- 时间: 2026年03月21日 03:49
当前位置: 首页 > news >正文
重庆网站建设服务,商城网站模板库,大连精美网站制作,用wordpress还是用框架基础资料 基于Air103开发板#xff1a;#x1f697; Air103 - LuatOS 文档 上手#xff1a;开发上手 - LuatOS 文档 探讨重点 对官方社区库接口类redis的fbd数据库及fskv库的调用及示例进行复现及分析#xff0c;了解两库的基本原理及操作方法。 软件及工具版本 Luat…基础资料 基于Air103开发板 Air103 - LuatOS 文档 上手开发上手 - LuatOS 文档 探讨重点 对官方社区库接口类redis的fbd数据库及fskv库的调用及示例进行复现及分析了解两库的基本原理及操作方法。 软件及工具版本 LuatOSAIR103 base 22.12 bsp V0016 32bit 硬件准备 Air103开发板1块。 简介 fbd库基于FlashDB提供在flash上保存数据的能力数据储存方式类似于redis的k-v demo例程首先判断当前固件是否支持fdb – 检查一下当前固件是否支持fdbif not fdb thenwhile true dolog.info(fdb, this demo need fdb)sys.wait(1000)endend 如提示this demo need fdb 则需要取消fdb的注释重新编译 编译方法可参考 https://blog.csdn.net/Medlar_CN/article/details/128456712 LOG: [2023-02-12 22:05:20.873] I/main auth ok 85104250303938373506004A521456060078 AIR103 [2023-02-12 22:05:20.873] I/main LuatOSAIR103 base 22.12 bsp V0016 32bit [2023-02-12 22:05:20.873] I/main ROM Build: Feb 12 2023 22:01:50 [2023-02-12 22:05:20.873] D/main loadlibs luavm 180208 11584 12264 [2023-02-12 22:05:20.873] D/main loadlibs sys 12288 4720 4720 [2023-02-12 22:05:21.904] D/lfs init ok [2023-02-12 22:05:21.904] I/user.fdb init complete [2023-02-12 22:05:22.296] I/user.fdb boottime number 2 [2023-02-12 22:05:22.296] I/user.fdb my_bool boolean true [2023-02-12 22:05:22.300] I/user.fdb my_int number 123 [2023-02-12 22:05:22.300] I/user.fdb my_number number 1.230000 [2023-02-12 22:05:22.300] I/user.fdb my_str string luatos [2023-02-12 22:05:22.302] I/user.fdb my_table table {name:wendal,age:18} [2023-02-12 22:05:22.328] I/user.fdb my_str_int string 123 [2023-02-12 22:05:22.328] I/user.fdb 1 byte key string 123 [2023-02-12 22:05:22.375] I/user.fdb my_bool nil nil [2023-02-12 22:05:22.375] I/user.fdb 1 value 123 [2023-02-12 22:05:22.378] I/user.fdb boottime value 2 [2023-02-12 22:05:22.378] I/user.fdb my_int value 123 [2023-02-12 22:05:22.378] I/user.fdb my_number value 1.230000 [2023-02-12 22:05:22.405] I/user.fdb my_str_int value 123 [2023-02-12 22:05:22.405] I/user.fdb my_str value luatos [2023-02-12 22:05:22.408] I/user.fdb my_table value table: 2000A230 [2023-02-12 22:05:22.408] I/user.fdb iter exit [2023-02-12 22:05:23.999] I/user.fdb 1.579000fdb - kv数据库,掉电不丢数据 已适配 Air101/Air103 Air105 ESP32C3 Air780 备注 本页文档由这个文件自动生成。如有错误请提交issue或帮忙修改后pr谢谢 小技巧 本库有专属demo点此链接查看fdb的demo例子 fdb.kvdb_init(name, partition) 初始化kv数据库 参数 传入值类型 解释 string 数据库名,当前仅支持env string FAL分区名,当前仅支持onchip_fdb 返回值 返回值类型 解释 boolean 成功返回true,否则返回false 例子 – fdb库基于 flashdb , 再次表示感谢. if fdb.kvdb_init(env, onchip_fdb) then log.info(fdb, kv数据库初始化成功) end – 关于清空fdb库 – 下载工具是没有提供直接清除fdb数据的途径的, 但有有办法解决 – 写一个main.lua, 执行 fdb.kvdb_init 后 执行 fdb.clear() 即可全清fdb数据. fdb.kv_set(key, value) 设置一对kv数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 string 用户数据,必填,不能nil, 支持字符串/数值/table/布尔值, 数据长度最大255字节 返回值 返回值类型 解释 boolean 成功返回true,否则返回false number 第二个为返回为flashdb的fdb_kv_set_blob返回详细状态,0无错误 1:擦除错误 2:读错误 3:些错误 4:未找到 5:kv名字错误 6:kv名字存在 7:已保存 8:初始化错误 例子 if fdb.kvdb_init(env, onchip_fdb) then log.info(fdb, fdb.kv_set(wendal, goodgoodstudy)) end fdb.kv_get(key, skey) 根据key获取对应的数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 string 可选的次级key,仅当原始值为table时有效,相当于 fdb.kv_get(key)[skey] 返回值 返回值类型 解释 any 存在则返回数据,否则返回nil 例子 if fdb.kvdb_init(env, onchip_fdb) then log.info(fdb, fdb.kv_get(wendal)) end fdb.kv_del(key) 根据key删除数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 返回值 返回值类型 解释 bool 成功返回true,否则返回false 例子 if fdb.kvdb_init(env, onchip_fdb) then log.info(fdb, fdb.kv_del(wendal)) end fdb.kv_clr() 清空整个kv数据库 参数 无 返回值 返回值类型 解释 bool 成功返回true,否则返回false 例子 – 清空 fdb.kv_clr() fdb.kv_iter() kv数据库迭代器 参数 无 返回值 返回值类型 解释 userdata 成功返回迭代器指针,否则返回nil 例子 – 清空 local iter fdb.kv_iter() if iter thenwhile 1 dolocal k fdb.kv_next(iter)if not k thenbreakendlog.info(fdb, k, value, fdb.kv_get(k))end end fdb.kv_iter(iter) kv迭代器获取下一个key 参数 传入值类型 解释 userdata fdb.kv_iter()返回的指针 返回值 返回值类型 解释 string 成功返回字符串key值, 否则返回nil 例子 – 清空 local iter fdb.kv_iter() if iter thenwhile 1 dolocal k fdb.kv_next(iter)if not k thenbreakendlog.info(fdb, k, value, fdb.kv_get(k))end end fdb.kv_stat() 获取kv数据库状态 参数 无 返回值 返回值类型 解释 int 已使用的空间,单位字节 int 总可用空间, 单位字节 int 总kv键值对数量, 单位个 例子 – 本API于2022.07.23 添加 local used,maxs,kv_count fdb.kv_stat() log.info(fdb, kv, used,maxs,kv_count) fskv - 替代fdb库 已适配 Air101/Air103 Air105 ESP32C3 Air780 备注 本页文档由这个文件自动生成。如有错误请提交issue或帮忙修改后pr谢谢 小技巧 本库有专属demo点此链接查看fskv的demo例子 示例 – 本库的目标是替代fdb库 – 1. 兼容fdb的函数 – 2. 使用fdb的flash空间,启用时也会替代fdb库 fskv.init() fskv.set(wendal, 1234) log.info(fskv, wendal, fskv.get(wendal))–[[ fskv与fdb的实现机制导致的差异fskv fdb
- value长度 4096 255
- key长度 63 64
- 空间利用率(对比) 较低 较高
- 读取速度 恒定 脏数据影响速度,非恒定
- 写入数据 恒定 脏数据影响速度,非恒定 ]] fskv.init() 初始化kv数据库 参数 无 返回值 返回值类型 解释 boolean 成功返回true,否则返回false 例子 if fskv.init() then log.info(fdb, kv数据库初始化成功) end – 关于清空fdb库 – 下载工具是没有提供直接清除fdb数据的途径的, 但有有办法解决 – 写一个main.lua, 执行 fskv.kvdb_init 后 执行 fskv.clear() 即可全清fdb数据. size1 width100% noshade stylecolor:black aligncenterfskv.set(key, value) 设置一对kv数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 string 用户数据,必填,不能nil, 支持字符串/数值/table/布尔值, 数据长度最大4095字节 返回值 返回值类型 解释 boolean 成功返回true,否则返回false 例子 – 设置数据, 字符串,数值,table,布尔值,均可 – 但不可以是nil, function, userdata, task log.info(fdb, fskv.set(wendal, goodgoodstudy)) log.info(fdb, fskv.set(upgrade, true)) log.info(fdb, fskv.set(timer, 1)) log.info(fdb, fskv.set(bigd, {namewendal,age123})) size1 width100% noshade stylecolor:black aligncenterfskv.get(key, skey) 根据key获取对应的数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 string 可选的次级key,仅当原始值为table时有效,相当于 fskv.get(key)[skey] 返回值 返回值类型 解释 any 存在则返回数据,否则返回nil 例子 if fskv.init() then log.info(fdb, fskv.get(wendal)) end size1 width100% noshade stylecolor:black aligncenterfskv.del(key) 根据key删除数据 参数 传入值类型 解释 string key的名称,必填,不能空字符串 返回值 返回值类型 解释 bool 成功返回true,否则返回false 例子 log.info(fdb, fskv.del(wendal)) size1 width100% noshade stylecolor:black aligncenterfskv.clear() 清空整个kv数据库 参数 无 返回值 返回值类型 解释 bool 成功返回true,否则返回false 例子 – 清空 fskv.clear() size1 width100% noshade stylecolor:black aligncenterfskv.iter() kv数据库迭代器 参数 无 返回值 返回值类型 解释 userdata 成功返回迭代器指针,否则返回nil 例子 – 清空 local iter fskv.iter() if iter then while 1 do local k fskv.next(iter) if not k then break end log.info(fdb, k, value, fskv.kv_get(k)) end end size1 width100% noshade stylecolor:black aligncenterfskv.iter(iter) kv迭代器获取下一个key 参数 传入值类型 解释 userdata fskv.iter()返回的指针 返回值 返回值类型 解释 string 成功返回字符串key值, 否则返回nil 例子 – 清空 local iter fskv.iter() if iter then while 1 do local k fskv.next(iter) if not k then break end log.info(fskv, k, value, fskv.get(k)) end end size1 width100% noshade stylecolor:black aligncenterfskv.status() 获取kv数据库状态 参数 无 返回值 返回值类型 解释 int 已使用的空间,单位字节 int 总可用空间, 单位字节 int 总kv键值对数量, 单位个 例子 local used, total,kv_count fskv.status() log.info(fdb, kv, used,total,kv_count)
- 上一篇: 重庆网站建设服务全网最好的推广平台
- 下一篇: 重庆网站建设公司怎么做如果网站打开非常缓慢
相关文章
-
重庆网站建设服务全网最好的推广平台
重庆网站建设服务全网最好的推广平台
- 技术栈
- 2026年03月21日
-
重庆网站建设的价格设计网站页面要注意什么
重庆网站建设的价格设计网站页面要注意什么
- 技术栈
- 2026年03月21日
-
重庆网站建设的公司哪家好wordpress 云相册
重庆网站建设的公司哪家好wordpress 云相册
- 技术栈
- 2026年03月21日
-
重庆网站建设公司怎么做如果网站打开非常缓慢
重庆网站建设公司怎么做如果网站打开非常缓慢
- 技术栈
- 2026年03月21日
-
重庆网站建设红旗河沟杭州市工程建设招标网
重庆网站建设红旗河沟杭州市工程建设招标网
- 技术栈
- 2026年03月21日
-
重庆网站建设狐灵邢台多地划为高风险区
重庆网站建设狐灵邢台多地划为高风险区
- 技术栈
- 2026年03月21日



