搜索
查看: 9677|回复: 19

[扩展库] unqite - 嵌入式NoSQL数据库

  [复制链接]

187

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
14023
发表于 2013-9-15 23:22:55 | 显示全部楼层 |阅读模式
很简单,给个例子:

  1. import unqlite;
  2. import console;

  3. // 打开数据库( 如果不存在就创建 )
  4. var udb = unqlite("/xxx.db");

  5. // 存储数据
  6. udb.store("名字","123");

  7. // 追加数据
  8. udb.append("名字","456");

  9. // 查询数据
  10. udb.fetch("名字",function( value ){
  11.         console.log( "查询返回", value )
  12. } )

  13. // 存储json对象
  14. udb.storeObject("jsonObject",{ name = "测试"} )

  15. // 查询json对象
  16. udb.fetch("jsonObject",function( value ){
  17.         console.log( "查询jsonObject返回", value )
  18. } )

  19. // 使用游标遍历所有数据
  20. var cursor = udb.cursor()
  21. for(k,v in cursor.each() ){
  22.         console.log("游标查询:", k,v );
  23. }

  24. // 编译Jx9脚本
  25. var jx9 = udb.compile("
  26.         //变量一定要用$美元符号开始( 类似PHP )
  27.         $zRec = { name : 'james'};
  28.         print myfunc('你好,我是Jx9')"
  29. )

  30. // 设置输出函数,脚本中 print 函数输出到这里
  31. jx9.configOutput( function( output ){
  32.         console.log( "脚本输出", output )
  33. } )

  34. // 自定义脚本函数
  35. jx9.createFunction("myfunc",function(pCtx,...){
  36.         var ctx = jx9.context(pCtx);
  37.         console.log(ctx.functionName(),"收到参数",...)
  38.         return "aardio返回到jx9"
  39. } )
  40.   
  41. //执行脚本
  42. jx9.exec()

  43. //获取脚本中的变量值
  44. var zRec = jx9.extractVariable("zRec"); //类似PHP不要包含美元符号
  45. console.log( zRec.name ) //因为使用json,aardio与Jx9传递对象非常方便

  46. /*
  47. 关于Jx9脚本
  48. http://unqlite.org/jx9_lang.html
  49. http://unqlite.org/jx9_builtin.html
  50. */
复制代码
回复

使用道具 举报

0

主题

12

帖子

151

积分

一级会员

Rank: 2

积分
151
发表于 2013-9-17 08:25:51 | 显示全部楼层

这是沙发吗?

这是沙发吗?
回复

使用道具 举报

12

主题

204

帖子

1260

积分

荣誉会员

Rank: 8Rank: 8

积分
1260
QQ
发表于 2013-9-17 09:52:01 | 显示全部楼层

我的板凳!~ 来学习新知识

我的板凳!~  来学习新知识
回复

使用道具 举报

1

主题

38

帖子

282

积分

二级会员

Rank: 3Rank: 3

积分
282
发表于 2013-9-17 10:42:48 | 显示全部楼层

好东西,用来保存简单的列表数据比sqlite方便,比ini安全。

好东西,用来保存简单的列表数据比sqlite方便,比ini安全。
回复

使用道具 举报

43

主题

679

帖子

3805

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3805
发表于 2013-9-17 11:59:25 | 显示全部楼层

传统的SQL用于关系型数据库 - 存储的数据是结构化的,必须都是固定的格式(每行记录必须是预设的字段结构),支持复杂的SQL条件查询 - 当然支持结构化查询是要

传统的SQL用于关系型数据库 - 存储的数据是结构化的,必须都是固定的格式(每行记录必须是预设的字段结构),支持复杂的SQL条件查询 - 当然支持结构化查询是要付出性能代价的。数据量越大、查询条件越复杂就越慢。当然在客户端我们一般较少遇到这些问题,sqlite的速度也非常快,通过使用事务、合理的建立索引都可以大幅提升存取速度。

NoSQL主要用于存储非关系型的数据。即数据以简单的键值对方式存储(key/value),数据可以不是固定的格式,当然也不能象SQL那样支持复杂的结构化查询。也就是说NoSQL的目标仅仅是用于存储,而不是为查询服务。所以他的存取速度非常快、也比较简单。

容纳键值对的基本数据结构是关联数组(associative array),关联数组最常见的实现是哈希表(HashMap),在编程时经常用到这个东西,例如aardio中的table就是哈希表,哈希表存取速度非常快,至于NoSQL是可以物理存储到硬盘上的哈希表 - 可以支持更大的数据。 如果你不需要复杂的SQL查询,数据之间又没有太多的关联性,而数据又比较大不适合用table对象直接序列化,那么这个 unqlite 很适合。

点评

同意: 3.3 反对: 5.0
CP3
同意: 5
想请教下,如何取出存储的文件  发表于 2013-9-26 16:19
同意: 5
  发表于 2013-9-22 14:47
星星点错了 - - !  发表于 2013-9-19 10:17
同意: 0 反对: 5
长知识了  发表于 2013-9-19 10:14
回复

使用道具 举报

17

主题

97

帖子

4万

积分

新手入门

积分
44038
发表于 2013-9-22 09:31:50 | 显示全部楼层

这个东西可以好好学

这个东西可以好好学
有太多东西要学,可是感觉没时间。
回复

使用道具 举报

2

主题

12

帖子

90

积分

一级会员

Rank: 2

积分
90
发表于 2013-9-25 10:26:41 | 显示全部楼层

好东西。太帅了!!

好东西。太帅了!!
回复

使用道具 举报

0

主题

35

帖子

511

积分

荣誉会员

Rank: 8Rank: 8

积分
511
发表于 2013-10-6 14:51:11 | 显示全部楼层

多谢楼主分享

多谢楼主分享
回复

使用道具 举报

0

主题

35

帖子

511

积分

荣誉会员

Rank: 8Rank: 8

积分
511
发表于 2013-10-8 11:33:13 | 显示全部楼层

多谢楼主分享

多谢楼主分享
回复

使用道具 举报

1

主题

13

帖子

190

积分

一级会员

Rank: 2

积分
190
发表于 2013-10-8 13:35:57 | 显示全部楼层

[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=61427&ptid=10854][c

编程 发表于 2013-9-17 11:59
传统的SQL用于关系型数据库 - 存储的数据是结构化的,必须都是固定的格式(每行记录必须是预设的字段结构) ...

原來有這樣差別 學習了!!
回复

使用道具 举报

0

主题

10

帖子

70

积分

一级会员

Rank: 2

积分
70
发表于 2014-9-4 23:36:39 | 显示全部楼层

很不错。很多时候用数据库太麻烦用这个应该不辍

很不错。很多时候用数据库太麻烦用这个应该不辍
回复

使用道具 举报

2

主题

36

帖子

307

积分

二级会员

Rank: 3Rank: 3

积分
307
发表于 2014-9-5 06:03:06 | 显示全部楼层

{:D}Great.

Great.
回复

使用道具 举报

5

主题

16

帖子

96

积分

一级会员

Rank: 2

积分
96
发表于 2015-5-7 17:36:19 | 显示全部楼层

这个nosql 怎么使用条件查询,比如where 什么的

这个nosql 怎么使用条件查询,比如where 什么的
回复

使用道具 举报

9

主题

54

帖子

310

积分

二级会员

Rank: 3Rank: 3

积分
310
发表于 2016-11-15 23:55:14 来自手机 | 显示全部楼层
好东西!!
回复

使用道具 举报

9

主题

54

帖子

310

积分

二级会员

Rank: 3Rank: 3

积分
310
发表于 2016-11-17 01:17:18 来自手机 | 显示全部楼层
有谁在用?
回复

使用道具 举报

9

主题

54

帖子

310

积分

二级会员

Rank: 3Rank: 3

积分
310
发表于 2016-11-17 08:43:21 来自手机 | 显示全部楼层
学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2019-9-19 08:32 , Processed in 0.078125 second(s), 29 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表