• CYQ.Data 支持 DaMeng 达梦数据库


    DaMeng 达梦数据库介绍:

    达梦数据库(DMDB)是中国自主研发的关系型数据库管理系统,由达梦科技股份有限公司开发。

    达梦数据库提供了企业级的数据库解决方案,广泛应用于金融、电信、政府、制造等行业领域。

    达梦数据库具有以下特点和优势:

    1. 高性能:具备高性能的并发处理能力,能够支持大容量和高并发的数据访问需求。
    2. 高可靠性:采用了多种数据保护机制,包括事务管理、数据备份恢复等,保障数据安全和稳定性。
    3. 高可扩展性:支持集群部署和分布式架构,能够灵活扩展以满足不同规模的数据存储需求。
    4. 兼容性强:兼容SQL标准,支持PL/SQL存储过程和触发器,同时也提供了丰富的工具和接口。
    5. 自主创新:在安全、性能、高可用性等方面不断进行技术创新和研发,满足用户不断变化的需求。

    总体来说,达梦数据库作为国产数据库管理系统,在国内市场具有一定的地位和影响力,受到一些企业用户的青睐和选择。

    CYQ.Data 框架简介:

    好几年没写 CYQ.Data 框架的文章了,一直都在低调更新版本和源码,这里就简单引用一下 GTP4 的介绍:

    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 管理器,直接搜 cyq.data,找到对应的 DaMeng 版本,引入即可。

    之前仅是发布了 cyq.data 原始版本,没有提供对应集成驱动的单独版本,今年刚添加的,一添加就十来个,多了不少工作量。

    cyq.data 原始版本和 cyq.data.dameng 版本的区别:

    复制代码
    cyq.data 原始版本:
    
      不包含其它数据库驱动,需要自行引用对应数据的驱动:比如使用mysql数据库时,需要再引用 mysql.data.dll 驱动。如果引用 cyq.data.mysql,则里面包含了 mysql.data.dll 驱动。
    
    cyq.data.dameng 版本:
    
      同样,里面集成了对应的数据库驱动,不用再单独引用。
    复制代码

    3、支持的版本:

    从下图可以看如,一如即往,从.net 2.0 一路支持到 .net 8 及以上。

    4、数据库链接语句:

     随便 CYQ.Data 支持的数据库越多,有些数据库的语句都一样,无法再根据关键字信息来识别,于是在语句上支持了provider:

    链接语句示例:

    provider=dameng;user id=SYSDBA;password=123456789;data source=127.0.0.1;port number=3050;schema=test;

    链接语句配置:

    复制代码
    {
      "ConnectionStrings": {
        "Conn": "provider=dameng;user id=SYSDBA;password=123456789;data source=127.0.0.1;port number=3050;schema=test;"
    
      }
    }
    复制代码

    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=DBFast.Select(1,10,"id>10");
    复制代码

    B、实体继承自 CYQ.Data.Orm

    复制代码
    public class Users:CYQ.Data.Orm.SimpleOrmBase
    {
        public Users()
        {
            base.SetInit(this, "表名");
        }
        public int ID { get; set; }
        public string Name { get; set; }
    }
    
    使用:
    
    using(Users user = new Users())
    {
        List 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、DaMeng 数据库的基础说明:

    在安装或使用 DaMeng 达梦数据库时,可以通过安装后的DM管理工具,来管理数据库

    启动,输入账号进入界面后:

    可以看到,默认都是大写标识,语句的关键字,是通过双引号包括起来。

    可以看到,达梦和常规的数据库比较不一样,你可以这样理解它:

    1、单数据库:

    一个实例只有一个数据库,一个进程或服务,只管理一个数据库。

    【对标以往其它数据库,都是一个实例对应多个数据库。】

    因此,打开管理工具时,就没能再看到新建数据库这种常规操作,初入时,会有点MengBiBi。

    2、多模式:

    一对一的关系,让实例即数据库,可省掉了数据库这个中间概念。

    同时支持多种模式,通过新建模式,区分库的概念,可理解为新建数据库。

    【对标有些数据库:支持多数据库和多模式,所以多模式又不完全是多数据库的替代概念。】

    基于它这种实例即数据库的模式,因此数据库链接中,不再需要指定数据库名称,但要指定模式名称:

    重新看一下这个示例的数据库链接语句:

    provider=dameng;user id=SYSDBA;password=123456789;data source=127.0.0.1;port number=3050;schema=test;

    3、创建多个数据库,需要创建新的实例:

    通过DB数据库配置助手,可以创建新的实例:

    在创建实例过程中,还是可以看到数据库名称和实例名称可以命名编写的:

     默认字符串查询比较是区分大小写的,如果不想区分,可以取消这个选项:

    做为一篇介绍框架支持数据库的文章,就不过多的介绍介绍数据库本身了,有用到的,可以上官方了解更多。

    总结:

    CYQ.Data 是一个用于操作数据库的框架,可以方便地连接和管理各种类型的数据库。在操作达梦数据库时,使用 CYQ.Data 框架可以提供以下功能和优势:

    1. 连接数据库:CYQ.Data 可以轻松地建立与达梦数据库的连接,通过简单的配置即可实现连接功能,节省了开发人员的时间和精力。

    2. 执行 SQL 查询:使用 CYQ.Data 可以方便地执行各种 SQL 查询操作,包括查询数据、更新数据、插入数据等,同时还支持事务处理,确保数据操作的准确性和完整性。

    3. 参数化查询:CYQ.Data 支持参数化查询,可以有效防止 SQL 注入攻击,提高数据库操作的安全性。

    4. 数据库事务:通过 CYQ.Data 框架可以轻松管理数据库事务,确保多个操作的原子性,避免数据不一致的情况发生。

    总的来说,使用 CYQ.Data 框架操作达梦数据库可以简化开发流程,提高开发效率,同时也增强了系统的稳定性和安全性。

     

  • 相关阅读:
    这个Python读取文件的方法,堪称天花板级别...
    MySQL----事务transaction
    WinHex使用方法详解
    AI 语音机器人系统怎么搭建
    ES7~11学习48~68
    ArcMap:第二届全国大学生GIS技能大赛(广西师范学院)详解-上午题
    【字符串】重新格式化字符串
    Element Plus 快速开始
    【测开求职】面试题:Redis 吐血整理
    Linux内网渗透
  • 原文地址:https://www.cnblogs.com/cyq1162/p/18056471