.net 连接达梦数据库开发环境部署

.net 开发环境部署

  1. 环境准备

|-------|-------------------|
| 测试工具 | Visual Studio2022 |
| 数据库版本 | dm8 |

  1. 搭建过程
    1 )创建新项目

    2 )选择创建空项目

    3 )配置新项目

    4 )右键 DM1 新建一个项


    5 )加 载 驱 动 , 新 建 添 加 引 用 , DmProvider.dll , 在 达 梦 数 据 库 安 装 目 录
    \drivers\dotNet\DmProvider 文件夹


    6 )代码中添加引用

    需注意在该项目应使用 里的 DmProvider.dll ,否则程序会报
    项目中引用的程序集之间存在版本冲突的错,具体来说,该项目引用了一个需要较高版本的 System.Runtime 程序集,而另一个程序集( DmProvider )引用的是一个较低版本的 System.Runtime 程序集。这种情况可能会导致编译或运行时出现问
    题。

|--------|--------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----|-------------------------|---|--------|
| 严重性 | 代码 | 说明 | 项目 | 文件 | 行 | 禁止显示状态 |
| 错误(活动) | CS1705 | 标识为"DmProvider, Version=1.1.0.20739, Culture=neutral, PublicKeyToken=7a2d44aa446c6d01"的程序集"DmProvider"所使用的"System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"版本高于所引用的标识为"System.Runtime, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"的程序集"System.Runtime" | dm | D:\.net\DM1\DM1\CSC | 1 | |

7 )添加 System 、 System.Data

8 )运行示例代码
运行代码前需要选择正确的启动对象才能启动成功,启动对象名应为想要启动的
文件的文件名

运行示例代码遇到报错,暂无法解决

  1. .NET操作数据库代码

一段完整的达梦数据库实现增删改查的代码如下:

1)数据库连接

DmConnection conn = new DmConnection();:创建了一个 DmConnection 类的实例 conn,用于数据库连接。conn.ConnectionString = "Server=192.168.104.21:5236; UserId=SYSDBA; PWD=SYSDBA;";:设置数据库连接字符串,指定了数据库服务器的地址、用户名和密码。conn.Open();:打开数据库连接。

通过设置cmd文本属性指定要执行的sql命令,即图中第一行,然后对cmd对象中的命令进行执行,即第二行,最后Console.WriteLine("dmprovider: insert success!");:在控制台输出一条消息,表示插入数据操作成功完成,输出的内容为 "dmprovider: insert success!"。

  1. 删,改

同增所述,都是先指定cmd的文本属性进行执行命令,然后通过cmd窗口打印输出结果

查代码和增删改不一样,需要对数据做出展示,所以在执行SQL查询命令后,需要返回一个数据读取器对象 reader,用于逐行读取查询结果,即DmDataReader reader = (DmDataReader)cmd.ExecuteReader()。然后通过string name = reader.GetString(0);:从数据读取器中获取第一个字段的值,将其存储在字符串变量 name 中。

Console.WriteLine("name:" + name);:在控制台输出每行数据的 name 字段值,格式为 "name: 值"。最后关闭数据读取器,打印查询成功的消息。

eco.dameng.com

相关推荐
程序员卷卷狗3 小时前
MySQL 高可用方案:主从 + MHA + ProxySQL + PXC 的实战应用与架构思考
数据库·mysql·架构
千千寰宇4 小时前
[数据库/数据结构] LSM-Tree :结构化的日志合并树——NewSQL数据库的基石
数据库
韩立学长4 小时前
基于Springboot的研学旅游服务系统5u416w14(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·旅游
isNotNullX5 小时前
怎么理解ETL增量抽取?
数据库·数据仓库·etl·企业数字化
谅望者5 小时前
数据分析笔记14:Python文件操作
大数据·数据库·笔记·python·数据挖掘·数据分析
l1t5 小时前
调用python函数的不同方法效率对比测试
开发语言·数据库·python·sql·duckdb
honortech5 小时前
MySQL 8 连接报错:Public Key Retrieval is not allowed
数据库·mysql
q***82915 小时前
MySQL--》如何通过选择合适的存储引擎提高查询效率?
数据库·mysql·adb
q***96585 小时前
MySql-9.1.0安装详细教程(保姆级)
数据库·mysql
2501_941111405 小时前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python