前言

国产数据库作为国产化替代的重要环节,在我国信创产业政策的指引下实现加速发展,我们国产数据库已进入百花齐放的快速发展期,相信接触到涉及到政府类等项目的童鞋尤为了解,与此同时我们有一部分也在使用各种开源的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.若丢一堆与问题无关的代码过来,还需要我来搭建各种环境,抽丝剥茧,抱歉,我会不予理会,当然,要是按小时付费也不是不可以 ,即便是搭建一个星期我也很乐意,这是我莫大的荣幸

翻译

搜索

复制

EF Core助力信创国产数据库的更多相关文章

  1. 使用EF Core更新与修改生产数据库

    使用EF Core的Code First,在设计阶段,直接使用Database.EnsureCreated()和EnsureDeleted()可以快速删除.更新最新的数据结构.由于没有什么数据,删除的 ...

  2. Solon v2.2.6 发布,助力信创国产化

    Solon 是一个高效的 Java 应用开发框架:更快.更小.更简单.它是一个有自己接口标准规范的开放生态,可为应用软件国产化提供支持,助力信创建设. 150来个生态插件,覆盖各种不同的应用开发场景: ...

  3. Solon v2.2.10 发布,助力信创国产化

    Solon 是一个高效的 Java 应用开发框架:更快.更小.更简单.它不是 Spring.没有使用 Servlet.JavaEE 接口,是一个有自己接口标准的开放生态.可以为应用软件国产化提供支持, ...

  4. EF Core利用Scaffold从根据数据库生成代码

    在EF6 之前的时代,如果需要从数据库中生成代码,是可以直接在界面上操作的,而到了EF Core的时代,操作方式又有更简便的方式了,我们只需要记住以下这条指令. Scaffold-DbContext ...

  5. ASP.NET Core 中使用EF Core 将实体映射到数据库表的方法(SQL Server)

    前段时间听过一个关于使用ASP.NET Core建立项目的视频.其中使用EF Core映射到数据库的部分是按部就班地学习.今天自己建立项目时,有些步骤已经有一些遗忘.所以写下这篇文章,顺便理清思路. ...

  6. EF Core 中多次从数据库查询实体数据,DbContext跟踪实体的情况

    使用EF Core时,如果多次从数据库中查询一个表的同一行数据,DbContext中跟踪(track)的实体到底有几个呢?我们下面就分情况讨论下. 数据库 首先我们的数据库中有一个Person表,其建 ...

  7. .NET CORE 下如何使用国产数据库进行 开发

    主流国产数据库 随着贸易战的升级 ,自主研发和知识产权也是一个大的趋势,达梦和人大金仓是国产数据库中比较主流的 1.达梦数据库 更接近Oracle,更偏向自主研发,对开发人员友好度不如金仓 达梦公司在 ...

  8. [翻译 EF Core in Action 2.2] 创建应用程序的数据库上下文

    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ...

  9. [翻译 EF Core in Action 2.0] 查询数据库

    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ...

  10. Asp.Net Core 2.0 项目实战(4)ADO.NET操作数据库封装、 EF Core操作及实例

    Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...

随机推荐

  1. H.265+SRS6.0服务器部署

    H.265+SRS6.0服务器部署 SRS从6.0开始,全面支持H.265,包括RTMP.FLV.HLS.GB28181.WebRTC等等.具体的服务器部署及H.265推流步骤如下. 1. SRS 要 ...

  2. 银河麒麟使用kickstart二次打包制作安装镜像ISO

    系统:银河麒麟 V10 SP2 服务器:百信恒山 TS02F-F30 安装方式:服务器挂载ISO镜像进行安装 1.安装 mkisofs 软件包: #yum install genisoimage 2. ...

  3. VisionPro学习笔记(3)——BeadInspectTool

    如果需要了解其他图像处理的文章,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice ...

  4. sqoop1.4.7完全支持Hadoop3.x, Hive3.x Hbase2.x

    已经修改好 保存至云盘 自己下载 花了时间的,记得关注我... 链接:https://pan.xunlei.com/s/VNe6P6Tm1A9Q-RG5GByN08rdA1# 提取码:5nke 复制这 ...

  5. LeetCode 周赛上分之旅 #45 精妙的 O(lgn) 扫描算法与树上 DP 问题

    ️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问. 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越 ...

  6. Gitbook Android App

    最有用Ionic 2 做了一个Gitbook 混合app, 上线google play的时候提醒我触犯了假冒行为,可能是logo和名字问题吧,放弃: 上线腾讯被认为是h5 app,不是native a ...

  7. 拯救Win7,2023该如何正确升级?

    对于现存的Win7系统用户,微软曾多次提醒将在2023年1月停止对Win7与Win8.1的安全更新和技术支持.而转眼已经来到2023,时间已到,对于Win7,微软已经再也不管了,停止为Win7用户提供 ...

  8. ReactPortals传送门

    ReactPortals传送门 React Portals提供了一种将子节点渲染到父组件以外的DOM节点的解决方案,即允许将JSX作为children渲染至DOM的不同部分,最常见用例是子组件需要从视 ...

  9. stat函数详解

    Linux系统函数之文件系统管理 stat函数 作用:获取文件信息 include <sys/types.h> #include <sys/stat.h> #include & ...

  10. 入门篇-其之五-Java运算符(上)

    一元运算符之正负号 Java支持多种一元运算符,一元运算符中的"一元"是指一个操作数.我们初中学过的正负号就属于一元运算符,因为正负号后面只有一个数字. 正数使用+表示,其中+可以 ...