其它数据库
OOR
默认支持Postgresql
, 同时也支持Elastic Search
和MySQL
!
可以通过修改引入的方式,改为其它数据库类型:
// 说明 : 默认 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 Search 和 SQL 提供的API 完全是一致的,但有一些说明:
- 仅支持客户端连接器
@elastic/elasticsearch
,mysql2/promise
. Elastic Search
没有主建,一些 byId 的方法需要传文档Document
的_id
,而非数据Source
的 id字段。- 部分查询条件 Elastic Search 不支持,如 字段串的大小比较
- oor 不支持多数据源,但可支持3个不同类型的数据源同时在一个应用内。