NewLifeX / NewLife.XCode

数据中间件,支持MySQL、SQLite、SqlServer、Oracle、Postgresql、TDengine、达梦,重点在缓存、性能、分表、自动建表。
https://newlifex.com/xcode
MIT License
74 stars 33 forks source link

扩展对 PostgreSQL 数据库中数组类型的支持 #33

Closed Soar360 closed 2 months ago

Soar360 commented 2 months ago

支持读取、写入数组。支持对数组进行查询。

数组的读取、写入由 XCode 库实现。不支持数组的数据库如果使用了数组特性,运行时会报错。

数组的查询由 XCode.PostgreSQL 库实现。包含 Overlap、Include 等。

已知问题:

  1. 通过索引修改数组时,不会触发脏属性。
  2. 暂定仅支持一维数组,多维数组不支持。

实施计划:

  1. 为 BindColumnAttribute 增加 IsArray 属性。
  2. 适配:模型生成器
  3. 适配:反向工程
  4. 适配:索引生成器。数组可能需要用 Gin 索引。
  5. 适配:数组专属的查询方法
nnhy commented 2 months ago

不支持数组的数据库,就让它抛出一个不支持的异常好了