.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();:打开数据库连接。

  1. 增

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

  1. 删,改

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

  1. 查

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

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

eco.dameng.com

相关推荐
Web3&Basketball2 小时前
DeepSeek V4.1 Flash 实测:Token 砍半、Search API 跑通
数据库·人工智能·python·大模型·api调用·deepseek·推理优化
川石课堂软件测试2 小时前
涨薪技术|0到1学会性能测试第9课-HTTP响应统计
数据库·功能测试·网络协议·http·kubernetes·单元测试·测试用例
竣达技术2 小时前
Modbus 转 SNMP 协议转换器|自定义协议 + SNMP TRAP 主动上报
运维·服务器·网络·数据库·安全
ss2733 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 18 PostgreSQL基本索引原理与创建
数据库·笔记·postgresql
l1t3 小时前
DeepSeek总结的本地优先的分析不需要数据库服务器
运维·服务器·数据库·人工智能·duckdb
十碗饭吃不饱3 小时前
MySQL InnoDB RR 隔离下二级索引临键锁引发 INSERT 锁超时 全链路解析
java·数据库·mysql
Gh0st_Lx3 小时前
【2】MySQL 为什么使用 B+树
数据库·b树·mysql
我不会插花弄玉3 小时前
8. 复合查询【由浅入深-MySQL】
android·数据库·mysql
北风toto3 小时前
数据库模式分解:如何判定“保持函数依赖”?
数据库