达梦数据库.NETCore.NET8实践指南|C/S软件开发框架|C/S开发框架
作者:csframework|C/S框架网  发布日期:2024/11/07 00:08:09

达梦数据库.NETCore.NET8实践指南|C/S软件开发框架|C/S开发框架

达梦数据库.NETCore.NET8实践指南|C/S软件开发框架

达梦数据库

达梦数据库.NETCore.NET8实践指南|C/S软件开发框架|C/S开发框架

国内领先的数据库产品开发服务商,国内数据库基础软件产业发展的关键推动者。公司为客户提供各类数据库软件及集群软件、云计算与大数据等一系列数据库产品及相关技术服务,致力于成为国际顶尖的全栈数据产品与解决方案提供商。

达梦数据库下载

官网下载地址:https://www.dameng.com/list_103.html

达梦数据库安装指南

安装指南:https://www.cscode.net/archive/newdoc/608532478009349.html

达梦数据库客户端管理工具 - DM管理工具

客户端管理工具操作指南:https://www.cscode.net/archive/newdoc/608532478009349.html#mcetoc_1ibrrlmes2

达梦数据库 - DM数据库迁移工具

数据库迁移指南:https://www.cscode.net/archive/newdoc/608562837348357.html

.NETCore | .NET8实践

数据库连接字符串

C# 全选
Server=localhost;Port=5236;Uid=SYSDBA;Pwd=12345654321;

达梦数据库DmDbContext

C# 全选
    /// <summary>
    /// 达梦数据库DbContext| www.csframework.com demo案例
    /// </summary>
    public class DmDbContext : DbContext
    {
        public DmDbContext(DbContextOptions<DmDbContext> options) : base(options) { }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseDm("Server=localhost;Port=5236;Uid=SYSDBA;Pwd=12345654321;");
            base.OnConfiguring(optionsBuilder);            
        }

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);

            //注入测试用的模型
            modelBuilder.Entity(typeof(dt_Customer));
            modelBuilder.Entity(typeof(tb_DataSet));
        }

        /// <summary>
        /// 获取查询接口
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public IQueryable<T> GetQueryable<T>() where T : class
        {
            return this.Set<T>().AsQueryable<T>().AsNoTracking();
        }

    }

测试EF

C# 全选
            //创建DbContext实例
            var dbContext = new DmDbContext(new DbContextOptions<DmDbContext>());

            //测试查询客户表
            var q1 = dbContext.GetQueryable<dt_Customer>();
            var customer = q1.FirstOrDefault();
            Console.WriteLine(customer.CustomerCode + customer.NativeName);

            //测试新增客户
            var newCustomer = new dt_Customer
            {
                isid = Guid.NewGuid().ToString(),
                CustomerCode = "Code" + DateTime.Now.ToString("ssfff"),//秒+毫秒
                NativeName = "客户名称",
                EnglishName = "EnglishName"
            };

            dbContext.Add(newCustomer);
            dbContext.SaveChanges(); //保存数据

            //测试查询账套表
            var q2 = dbContext.GetQueryable<tb_DataSet>();
            var ds = q2.FirstOrDefault();
            Console.WriteLine(ds.DataSetID + ds.DataSetName);

测试ADO.NET

C# 全选
            string connectionString = "Server=localhost;Port=5236;User Id=SYSDBA;Password=12345654321;";
            DmConnection connection = new DmConnection(connectionString);

            try
            {
                connection.Open();
                Console.WriteLine("数据库连接成功!");

                //这里可以执行SQL命令,例如查询或者更新操作
                DbCommand command = connection.CreateCommand();
                command.CommandText = "SELECT * FROM \"dt_Customer\"";

                DataSet ds = new DataSet();
                DbDataAdapter adapter = new DmDataAdapter();
                adapter.SelectCommand = command;
                adapter.Fill(ds);

                dataGridView1.AutoGenerateColumns = true;
                dataGridView1.DataSource = ds.Tables[0];
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                if (connection.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }

CSFramework.EF集成

测试报告:https://www.cscode.net/archive/csframework.ef/608717848842245.html

总结

  1. 数据库架构类似Oracle。
  2. 集成到CSFramework.EF数据库框架,开发者使用更简单。
  3. 达梦数据库DM客户端工具、DM数据库迁移工具非常好用。
  4. 特殊数据类型测试场景没有全覆盖,不可预知的错误较多,兼容性不够强。
  5. 貌似DmBulkCopy批导数据都有问题,兼容性不够强。
  6. 支持国产软件,遵循信创要求,助力信息技术自主创新。

达梦数据库.NETCore.NET8实践指南|C/S软件开发框架|C/S开发框架

C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
上一篇 下一篇