.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

相关推荐
Elastic 中国社区官方博客10 分钟前
SearchClaw:将 Elasticsearch 通过可组合技能引入 OpenClaw
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
娇娇yyyyyy1 小时前
Qt编程(3): 信号和槽函数
开发语言·数据库·qt
乌鸦乌鸦你的小虎牙4 小时前
qt 5.12.8 配置报错(交叉编译环境)
开发语言·数据库·qt
一只大袋鼠5 小时前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
Anastasiozzzz5 小时前
深入研究Redis的ZSet底层数据结构:从 Ziplist 的级联更新到 Listpack 的完美救场
数据结构·数据库·redis
菠萝蚊鸭5 小时前
x86 平台使用 buildx 基于源码构建 MySQL Wsrep 5.7.44 镜像
数据库·mysql·galera·wsrep
沙漏无语7 小时前
(二)TIDB搭建正式集群
linux·数据库·tidb
姚不倒7 小时前
三节点 TiDB 集群部署与负载均衡搭建实战
运维·数据库·分布式·负载均衡·tidb
隔壁小邓7 小时前
批量更新方式与对比
数据库
数据知道7 小时前
MongoDB复制集架构原理:Primary、Secondary 与 Arbiter 的角色分工
数据库·mongodb·架构