• EF Core助力信创国产数据库


    前言

    国产数据库作为国产化替代的重要环节,在我国信创产业政策的指引下实现加速发展,我们国产数据库已进入百花齐放的快速发展期,相信接触到政府类等项目的童鞋尤为了解,与此同时我们有一部分也在使用各种开源的ORM都早已支持主流国产数据库,我们也有一部分在使用官方EF Core但没有对国产数据库的统一的管理和支持,去年我写过一篇如何使用EF Core适配支持人大金仓,既然如此,利用我工作空余时间将其适配后开源出来,大家来共同添砖加瓦

    人大金仓和华为高斯数据库介绍

    人大金仓和华为高斯数据库底层都是基于PostgreSQL,关于各自之后基于数据库本身增添的特性在此不做进一步的阐述,可自行去官网了解。这里我所讲的特性,仅仅陈述我们表列等基本特性,这也是我们进行增删改查业务操作所需要用到的,根据我的了解,人大金仓在不断适配PostgreSQL的新版本,最新应该是PostgreSQL 12.0,所以这样一来对于新的人大金仓版本我们可能直接使用Npgsql即可使用,但对于老的版本可能又不行,当然PostgreSQL新版本上的新特性,人大金仓有些自然而然也就对应继承了,比如主键自增长,在PostgreSQL 10.0新增,对应人大金仓本身对于列类型也做了对应的扩充等等。华为高斯数据库底层一直停留在PostgreSQL 9.2.4,所以呢,PostgreSQL 10.0新增的主键自增长Identity就无法支持,只支持通过Squence创建,通过OpenGaussDB官网也可印证这一点。

    支持人大金仓和华为高斯数据库

    在我当前浅薄认知下,信创国产数据库人大金仓和高斯数据库比较腰间突出,所以我已优先适配人大金仓 EF Core 6.x和华为高斯EF Core 8.0版本且已发布至NuGet,开源地址为我们土生土长的.NET NCC社区:https://github.com/dotnetcore/EntityFrameworkCore.KingbaseEShttps://github.com/dotnetcore/EntityFrameworkCore.GaussDB。具体使用方式请见README

    后续计划

    接下来会支持高斯6.0/7.0、人大金仓7.0/8.0,至于发布时间嘛,没人提ISSUE则根据我个人的空挡时间而定,有需求的话则根据具体反馈做对应优先级处理调整。我还是希望能有更多同仁参与进来,我指的是共同参与做贡献,而不是多提ISSUE,毕竟我个人的时间和精力也有限,哈哈

    关于ISSUE处理基本规范

    顺便提一嘴,有关问题可能需要复现,请允许我提前说一句:Guys, I'm going to need a concrete code sample which reproduces the issue, otherwise I'm not going to be able to investigate.若丢一堆与问题无关的代码过来,还需要我来搭建各种环境,抽丝剥茧,抱歉,我将不予理会,当然,要是按小时付费也不是不可以 ,即便是搭建一个星期我也很乐意,这是我莫大的荣幸


    为了方便大家在移动端也能看到我分享的博文,现已注册个人公众号,扫描上方左边二维码即可,欢迎大家关注,有时间会及时分享相关技术博文。

    感谢花时间阅读此篇文章,如果您觉得这篇文章你学到了东西也是为了犒劳下博主的码字不易不妨打赏一下吧,让楼主能喝上一杯咖啡,在此谢过了!
    如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!
    本文版权归作者和博客园共有,来源网址:http://www.cnblogs.com/CreateMyself)/欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    【面试宝典】39道C++内存管理高频题库整理(附答案背诵版)
    JAVA基于精细化考核的离散数学课程教学目标达成系统计算机毕业设计Mybatis+系统+数据库+调试部署
    JetLinks物联网基础平台-2.0,正式发布,全新架构、全新的前端UI
    java计算机毕业设计客服管理系统源码+mysql数据库+系统+lw文档+部署
    从0实现线性回归
    git命令的操作
    你能猜出这是什么代码
    常见APP攻击方法 以及防御方法介绍(移动安全)
    RuoYi-Vue新建模块
    Android:WebView使用常见问题汇总(持续更新)
  • 原文地址:https://www.cnblogs.com/CreateMyself/p/17900180.html