您当前的位置: 首页 > 知识百科 > 微信小程序数据库在哪?如何编写小程序数据库?

微信小程序数据库在哪?如何编写小程序数据库?

时间:2023-07-01 14:05 阅读数:127 人阅读 分类:知识百科

  小程序数据库能够让数据的查询和整理更加便捷,也能尽量的让数据和运算靠近,但是有很多人反映找不到数据库,那么微信小程序数据库在哪呢?

  之前,微信小程序是不能直接连数据库的,要通过小程序接口连接数据库。但是现在小程序功能完善了之后,小程序数据库就在小程序的后台里。对于使用者来说,只需要打开小程序就能使用数据库,但是对于开发者来说,更应该了解的是关于小程序数据库的编写问题。

  如何编写"数据库小程序"呢:

  大家可能觉得,只要数据库支持函数语言,或者过程语言,就可以编写"数据库小程序"了。

  这个想法固然没错,但是要知道通常数据库提供的过程语言是比较简陋的,包括Oracle的PL/SQL,PostgreSQL的plpgsql在内,虽然它们强大,它也无法与常用的编程语言例如GO, Java, Python, R等相提并论,特别是在一些非常专的领域,可能就有非常专业的语言来支撑,比如数据分析领域R语言就首当其冲。

  那么要让"数据库小程序"能够担当起真正的小程序功能,看样子仅支持数据库的"简陋"语言是不够的。以下是具体要求:

  1 支持地球语言

  PostgreSQL是这样一个数据库,理论上你可以把任何小程序开发语言(只要是地球语言),作为它的数据库端编程语言,目前已支持的语言就已经好多好多了,以语言插件的方式提供。

  C, plpgsql, plpython, plperl, pltcl, plR, pljava, plv8, ..... 恕我叫得出名字的编程语言较少,实际上支持的语言数不胜数啊

  除了考虑编程语言的支持,我们还需要考虑点其他的吗?

  2 底盘扎实、扩展能力强、(可靠*、HA、*能等就不说了,都是底盘技术)

  PostgreSQL的开放*不仅仅表现在编程能力的扩展方面,在PostgreSQL的生态中有很多贴近业务的用法,比如在PostgreSQL中存储和处理化学分子、存储和处理图像、存储和处理基因数据、存储和处理文本(包括高效正则、模糊、全文检索等技术,文本相似度查询等)、访问外部任意数据源等。

  一些比较有意思的小程序数据库特*如下:

  1. 支持使用常见的C, plpgsql, plpython, plperl, pltcl, plR, pljava, plv8等语言编写数据库端函数,

  同时你还可以根据PostgreSQL提供的扩展接口,扩展更多的编程语言

  .postgresql.org/docs/devel/static/xplang.html

  2. 数据类型支持丰富,例如支持传统数据类型外的包括 数组、序列, UUID , jsonb, GIS, text, 异构类型,Key-Value类型(hstore), 全文检索 , 化学 , 图像 , 基因 , 外部数据源 ... 等,同时支持自定义扩展类型

  3. 支持btree, hash, gin , gist, spgist, brin , rum , bloom等索引类型,

  这些索引可以用于支持常见的排序,大于,小于,等于,任意列等于查询,同时也可以支持异构类型如数组、全文检索的匹配,图片文本的相似度排序,交叠查询,地理位置的运算,KNN等,支持块级索引(在IoT场景很好用)等。

  同时允许用户自定义索引接口,支持更多的数据类型。

  4. SQL语法层面支持大部分2013 SQL标准,以及扩展的SQL用法: returning, 游标, 异步消息, ECPG, 窗口查询,递归查询,grouping set, upsert, skip lock, ad lock 等高级语法。

  5. JOIN方面,支持hash join , merge join , nestloop join ,

  6. 优化器方面,支持自定义成本因子, CBO , 遗传算法等。

  7. 另外可以利用GPU加速运算,包括隐式加速,也可以显示加速。

  隐式指数据库自身提供的custom scan provider编程接口,已经有实现了的插件。

  显式,指的是过程语言和CUDA的结合,例如PyCUDA。

  8. 还可以用支持并行编程的语言来方便的实现多核处理,(目前PostgreSQL 9.6已经支持内置的并行计算(包括全表扫描、哈希JOIN,哈希聚合等操作))。

  9. 通过FDW接口,访问几乎任意外部数据

  现在大家知道微信小程序数据库在哪了吗?小编依然觉得,与其搜索数据库去使用,倒不如试着自己去开发数据库,这样还能参照自己的需要进行相应的开发。更多相关资料请关注微信小程序商店。

  

  微信小程序数据库交互开发实例

  微信小程序数据库交互怎么实现?

  微信小程序怎么调用数据库?