其它数据库

OOR 默认支持 Postgresql , 同时也支持 Elastic SearchMySQL !

可以通过修改引入的方式,改为其它数据库类型:

// 说明 : 默认 oor 为 Postgresql
import { Table, setup } from 'oor';
// 将 'oor' 改为 'oor/es' 则数据库类型为 : Elastic Search 
import { Table, setup } from 'oor/es';
// 将 'oor' 改为 'oor/mysql' 则数据库类型为 : MySql 
import { Table, setup } from 'oor/mysql';

修改引入后 , setup 方法参数里面的 provider 需要传对应的数据库配置

MySql 的数据源参数几乎与 PG一样, Elastic Search 示例如下:

setup({
    provider: {
        node: 'https://localhost:9200',
        auth: { username: 'elastic', password: 'changeme' },
        tls: { rejectUnauthorized: false, }
    },
})

一些说明

OOR 对 Elastic SearchSQL 提供的API 完全是一致的,但有一些说明:

  1. 仅支持客户端连接器 @elastic/elasticsearchmysql2/promise.
  2. Elastic Search 没有主建,一些 byId 的方法需要传 文档Document_id,而非 数据Source 的 id字段。
  3. 部分查询条件 Elastic Search 不支持,如 字段串的大小比较
  4. oor 不支持多数据源,但可支持3个不同类型的数据源同时在一个应用内。