CYQ.Data 支持 KingbaseES人大金仓数据库
KingbaseES人大金仓数据库介绍:
KingbaseES是一种关系型数据库管理系统,也被称为人大金仓数据库。KingbaseES 是北京人大金仓信息技术股份有限公司研发的,具有自主知识产权的通用数据库产品。
该产品面向事务处理类应用,兼顾各类数据分析类应用,可用做管理信息系统、业务及生产系统、决策支持系统、多维数据分析、全文检索、地理信息系统、图片搜索等的承载数据库。
作为KingbaseES产品系列最新一代版本,KingbaseESV8在系统的可靠性、可用性、性能和兼容性等方面进行了重大改进。
以下是一些关于KingbaseES数据库的特点和功能:
数据库引擎:KingbaseES是基于开源数据库PostgreSQL开发的,具备PostgreSQL的核心功能。它继承了PostgreSQL的可靠性、稳定性和高度兼容性,同时加入了自主创新的技术和功能。
兼容性:KingbaseES与其他主流数据库(如Oracle、SQL Server等)具有较高的兼容性,可以迁移和运行现有的应用程序和数据库对象。这使得企业能够更容易地将现有的应用程序和数据迁移到KingbaseES上。
分布式存储和高可用性:KingbaseES支持分布式数据库和高可用架构,可以实现数据的分布式存储和在多个节点之间的数据复制和同步,提供高可用性和容错性。
安全性:KingbaseES提供了强大的安全性功能,包括角色和用户管理、访问控制、数据加密等,以确保数据库的安全性和数据的保密性。
多语言支持:KingbaseES支持多种编程语言和开发工具,包括Java、C#、Python等,使得开发人员能够使用自己熟悉的语言来开发和管理数据库应用程序。
大数据处理:KingbaseES具备处理大规模数据和高并发访问的能力,支持大数据处理和分析,适用于需要处理海量数据和高性能计算的场景。
总体而言,KingbaseES是一个功能强大、稳定可靠、兼容性好的关系型数据库管理系统。
它在中国企业和政府机构中得到广泛应用,特别是那些希望建立在成熟开源技术基础上,同时具备商业级支持和增强功能需求的组织。
CYQ.Data 框架简介:
CYQ.Data 是一个高性能且功能强大的ORM(对象关系映射)框架,支持包括.NET Core在内的各种.NET版本。
它设计用于与多种数据库如MSSQL、MySQL、Oracle、Sybase、PostgreSQL、DB2、FireBird、SQLite、DaMeng、KingBaseES等,以及格式如Txt、Xml、Access、Excel和FoxPro等工作。
该框架旨在通过提供写日志、操作JSON和分布式缓存等功能,简化数据层操作,无需额外的库如Log4net.dll、newtonjson.dll或Memcached.ClientLibrary.dll。
该框架自豪于其低调但持续15年的更新,强调其长期可靠性和对开发人员寻找稳定且多功能ORM解决方案的支持。
前言:
去年有群友问我,CYQ.Data 支不支国产数据库,那时候,没支持,只是给了些提示,让其自行通过开源代码支持了。
后来问的人多了,就开始支持了。
CYQ.Data 从去年年底开始支持国产数据库,下面就开始介绍相关内容。
1、开源地址:
https://github.com/cyq1162/cyqdata

2、 Nuget 引用
可以通过 nuget 管理器,直接搜 cyqdata,找到对应的 KingBaseES 版本,引入即可。

cyq.data 原始版本和 cyq.data.kingbasees 版本的区别:
cyq.data 原始版本: 不包含其它数据库驱动,需要自行引用对应数据的驱动:比如使用mysql数据库时,需要再引用 mysql.data.dll 驱动。如果引用 cyq.data.mysql,则里面包含了 mysql.data.dll 驱动。 cyq.data.kingbasees 版本: 同样,里面集成了对应的数据库驱动,不用再单独引用。
3、支持的版本:
从下图可以看如,由于官方驱动未支持.net 2.0的原因,因此从.net 4.0 一路支持到 .net 8 及以上。

4、数据库链接语句:
随便 CYQ.Data 支持的数据库越多,有些数据库的语句都一样,无法再根据关键字信息来识别,于是在语句上支持了provider:
链接语句示例:
provider=kingbasees;server=127.0.0.1;User Id=system;Password=123456;Database=test;Port=54321;schema=public;
链接语句配置:
{
"ConnectionStrings": {
"Conn": "provider=provider=kingbasees;server=127.0.0.1;User Id=system;Password=123456;Database=test;Port=54321;schema=public;"
}
}
5、使用示例:
框架默认会引用配置中 Conn 的链接,所以在代码中无需指定。
1、无实体:
使用 MAction 操作表、视图,带分页:
using (MAction action = new MAction("表名、视图名、sql查询语句"))
{
MDataTable dt = action.Select(1, 10, "id>10");
}
使用 MProc 操作原始sql语句或存储过程:
using (MProc proc=new MProc("sql语句、存储过程名"))
{
MDataTable dt = proc.ExeMDataTable();
}
2、有实体:
A、纯实体
public class Users
{
public int ID { get; set; }
public string Name { get; set; }
} 使用: List<Users> users=DBFast.Select<Users>(1,10,"id>10");
B、实体继承自 CYQ.Data.Orm
public class Users:CYQ.Data.Orm.SimpleOrmBase<Users>
{
public Users()
{
base.SetInit(this, "表名");
}
public int ID { get; set; }
public string Name { get; set; }
} 使用: using(Users user = new Users())
{
List<Users> users = user.Select(1, 10, "id>10");
}
以上仅展示查询功能,CYQ.Data 的操作,对十多种数据库,操作都是一致的。
如果还没有学过,可以看 CYQ.Data 相关教程。
1、V4 系列:https://www.cnblogs.com/cyq1162/category/216965.html
2、V5 系列:https://www.cnblogs.com/cyq1162/category/852300.html
6、KingBaseES 人大金仓数据库的基础说明:
在安装或使用 KingBaseES 人大金仓数据库时,可以通过安装后的数据库开发工具KStudio管理工具,来管理数据库

启动,输入账号进入界面后:
可以看到,默认都是小写标识,语句的关键字,是通过双引号包括起来。

而且和上篇文章介绍的:CYQ.Data 支持 DaMeng 达梦数据库 明显不同。
关键信息:
1、KingBaseES 人大金仓数据库 是多数据库、多模式。
2、public 为默认模式,因此,默认情况下,我们可以在 public 模式下新建表即可。
一开始没发现 public 是默认模式,都是新建模式在测试,这让我在一开始的时候,有点绕。
重新看一下这个示例的数据库链接语句:
provider=kingbasees;server=127.0.0.1;User Id=system;Password=123456;Database=test;Port=54321;schema=public;
从这个示例链接中,我们不仅要指定Database,同时也需要指定schema。
做为一篇介绍框架支持数据库的文章,就不过多的介绍介绍数据库本身了,有用到的,可以上官方了解更多。
总结:
CYQ.Data 是一个用于操作数据库的框架,可以方便地连接和管理各种类型的数据库。在操作 KingBaseES 人大金仓数据库时,使用 CYQ.Data 框架可以提供以下功能和优势:
连接数据库:CYQ.Data 可以轻松地建立与 KingBaseE 数据库的连接,通过简单的配置即可实现连接功能,节省了开发人员的时间和精力。
执行 SQL 查询:使用 CYQ.Data 可以方便地执行各种 SQL 查询操作,包括查询数据、更新数据、插入数据等,同时还支持事务处理,确保数据操作的准确性和完整性。
参数化查询:CYQ.Data 支持参数化查询,可以有效防止 SQL 注入攻击,提高数据库操作的安全性。
数据库事务:通过 CYQ.Data 框架可以轻松管理数据库事务,确保多个操作的原子性,避免数据不一致的情况发生。
总的来说,使用 CYQ.Data 框架操作 KingBaseES 数据库可以简化开发流程,提高开发效率,同时也增强了系统的稳定性和安全性。
CYQ.Data 支持 KingbaseES人大金仓数据库的更多相关文章
- 通过ODBC接口访问人大金仓数据库
国产化软件和国产化芯片的窘境一样,一方面市场已经存在性能优越的同类软件,成本很低,但小众的国产化软件不仅需要高价买入版权,并且软件开发维护成本高:另一方面,国产软件目前普遍难用,性能不稳定,Bug ...
- QT 之 ODBC连接人大金仓数据库
QT 之 使用 ODBC 驱动连接人大金仓数据库 获取数据库驱动和依赖动态库 此操作可在人大金仓官网下载与系统匹配的接口动态库,或者从架构数据库的源码中获取驱动和依赖动态库 分别为: 驱动动态库:kd ...
- 通过jmeter连接人大金仓数据库
某项目用的人大金仓数据库,做性能测试,需要用jmeter来连接数据库处理一批数据.jmeter连接人大金仓,做个记录. 1. 概要 在"配置元件"中添加"JDBC Con ...
- DBeaver连接达梦|虚谷|人大金仓等国产数据库
前言 工作中有些项目可能会接触到「达梦.虚谷.人大金仓」等国产数据库,但通常这些数据库自带的连接工具使用并不方便,所以这篇文章记录一下 DBeaver 连接国产数据库的通用模版,下文以达梦为例(其他国 ...
- 教你10分钟对接人大金仓EF Core 6.x
前言 目前.NET Core中据我了解到除了官方的EF Core外,还用的比较多的ORM框架(恕我孤陋寡闻哈,可能还有别的)有FreeSql.SqlSugar(排名不分先后).FreeSql和SqlS ...
- CYQ.Data 支持WPF相关的数据控件绑定.Net获取iis版本
CYQ.Data 支持WPF相关的数据控件绑定(2013-08-09) 事件的结果 经过多天的思考及忙碌的开发及测试,CYQ.Data 终于在UI上全面支持WPF,至此,CYQ.Data 已经可以方便 ...
- CYQ.Data 支持分布式数据库(主从备)高可用及负载调试
前言: 继上一篇,介绍 CYQ.Data 在分布式缓存上支持高可用,详见:CYQ.Data 对于分布式缓存Redis.MemCache高可用的改进及性能测试 本篇介绍 CYQ.Data 在对数据库层面 ...
- CYQ.Data 支持 PostgreSQL 数据库
前言: 很久之前,就有同学问我CYQ.Data能不能支持下PostgreSQL,之后小做了下调查,发现这个数据库用的人少,加上各种因素,就一直没动手. 前两天,不小心看了一下Github上的消息: 看 ...
- CYQ.Data 支持WPF相关的数据控件绑定(2013-08-09)
事件的结果 经过多天的思考及忙碌的开发及测试,CYQ.Data 终于在UI上全面支持WPF,至此,CYQ.Data 已经可以方便支持wpf的开发,同时,框架仍保留最低.net framework2.0 ...
- linux安装国产数据库(金仓数据库,达梦数据库,南大通用数据库)
今天在公司做的任务是,在Linux的环境下安装三种数据库,结果一种数据库也没有安装好,首先遇到的问题是安装南大通用数据库遇到安装的第五步,就出现问题了,问题是Gbase SDK没有安装成功,以及Gba ...
随机推荐
- vim 从嫌弃到依赖(3)——vim 普通模式
在上一篇中,我们提到vim的几种模式,并且给出了一些基本的操作命令,包括移动光标,删除.替换操作.并且给出了几个重要的公式,理解这个公式对于理解vim和提高使用vim的效率来说至关重要.所以在这篇文章 ...
- Solon 框架启动为什么特别快?
思来想去!可能与 Solon 容器的独立设计有一定关系. 1.Solon 注解容器的运行特点 有什么注解要处理的(注解能力被规范成了四种),提前注册登记 全局只扫描一次,并在扫描过程中统一处理注解相关 ...
- 私密离线聊天新体验!llama-gpt聊天机器人:极速、安全、搭载Llama 2
"私密离线聊天新体验!llama-gpt聊天机器人:极速.安全.搭载Llama 2,尽享Code Llama支持!" 一个自托管的.离线的.类似chatgpt的聊天机器人.由美洲驼 ...
- 【1】windows系统如何安装后缀是whl的python库
相关文章: 全网最详细超长python学习笔记.14章节知识点很全面十分详细,快速入门,只用看这一篇你就学会了! [1]windows系统如何安装后缀是whl的python库 [2]超级详细Pytho ...
- Leetcode刷题第一天-贪心
455-分饼干 链接:455. 分发饼干 - 力扣(LeetCode) 优先使用最小饼干满足最小胃口,一个娃只能分一个饼干T_T不能加 1 class Solution: 2 def findCont ...
- PHP操作数据分页
PHP操作数据分页 一.数据库安全 string addslashes ( string $str ) 返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线.这些字符是单引号('). ...
- Redis有哪些潜在的慢操作?
Redis作为内存数据库,访问速度快是最大的特点,那么,什么情况下,Redis也会变慢呢? Redis底层数据结构 Redis有5种基本数据类型:String,List,Hash,Set,ZSet 有 ...
- .NET周刊【1月第3期 2024-01-24】
国内文章 .NET开源的简单.快速.强大的前后端分离后台权限管理系统 https://www.cnblogs.com/Can-daydayup/p/17980851 本文介绍了中台Admin,一款基于 ...
- 阿里二面:SpringBoot可以同时处理多少个请求?当场懵了。。。。
SpringBoot以其简洁高效的开发方式和强大的内嵌容器特性,为开发者提供了构建高性能后端服务的便利.然而,当面临高并发场景时,理解并合理配置Spring Boot应用以达到最佳的并发处理能力至关重 ...
- MySQL的经典SQL优化12例(更新于2023年12月28日)
下列优化的SQL案例,区别于平常加SQL索引的方法优化,大部分都是通过改写SQL语句方法优化,都是日常优化线上慢SQL的实际案例,有比较好的代表性(思路和方法),也是对自己这些年来做SQL优化的总结, ...