雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

.NET Core使用DM.DmProvider库连接达梦数据库

2024-08-21 33

要使用 DM.DmProvider 库连接达梦数据库,您需要在您的项目中添加以下 NuGet 包:

Install-Package DM.DmProvider

然后,您可以使用以下代码连接到达梦数据库:

using DM.DmProvider;

namespace DMDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建连接字符串
            string connectionString = "Data Source=localhost;Initial Catalog=test;User ID=admin;Password=admin;";

            // 创建连接
            IDmConnection connection = new DmConnection(connectionString);

            // 打开连接
            connection.Open();

            // 执行查询
            var reader = connection.Query("SELECT * FROM users");

            // 遍历结果集
            while (reader.Read())
            {
                Console.WriteLine("{0} {1}", reader["id"], reader["name"]);
            }

            // 关闭连接
            connection.Close();
        }
    }
}

此示例将连接到名为 test 的数据库,用户名为 admin,密码为 admin。它将执行查询 SELECT * FROM users,并将结果打印到控制台。

以下是 DM.DmProvider 库的一些常用功能:

连接到达梦数据库

// 使用连接字符串连接
IDmConnection connection = new DmConnection("Data Source=localhost;Initial Catalog=test;User ID=admin;Password=admin;");

// 使用连接参数连接
IDmConnection connection = new DmConnection(new DmConnectionParameter("Data Source", "localhost"), new DmConnectionParameter("Initial Catalog", "test"), new DmConnectionParameter("User ID", "admin"), new DmConnectionParameter("Password", "admin"));

执行查询

// 执行简单查询
var reader = connection.Query("SELECT * FROM users");

// 执行带参数的查询
var reader = connection.Query("SELECT * FROM users WHERE id = @id", new DmParameter("id", 1));

执行非查询语句

// 执行插入语句
int rows = connection.ExecuteNonQuery("INSERT INTO users (name, age) VALUES ('John Doe', 30)");

// 执行更新语句
int rows = connection.ExecuteNonQuery("UPDATE users SET age = 31 WHERE name = 'John Doe'");

// 执行删除语句
int rows = connection.ExecuteNonQuery("DELETE FROM users WHERE name = 'John Doe'");

使用映射

DM.DmProvider 库支持使用映射来简化数据访问。您可以使用 DmMapper 类来创建映射。

// 创建映射
DmMapper mapper = new DmMapper();

// 映射用户表
mapper.AddMapping(typeof(User), "users");

// 使用映射
var users = mapper.Query<User>(connection, "SELECT * FROM users");

此示例将映射 users 表到 User 类。然后,它将使用映射来查询 users 表并将结果转换为 User 对象。

更新于:29天前
赞一波!4

文章评论

全部评论