C#(.NET)数据访问连接、查询、插入等操作的封装类

C#(.NET)数据访问连接、查询、插入等操作的封装类是开发.NET应用程序必不可少的一部分。下面是整个封装类的详细攻略。

1.数据库连接

1.1 数据库连接字符串

在封装类中,首先需要定义数据库的连接字符串。连接字符串包含数据库服务器名、数据库名、用户身份验证等信息。

string connectionString = "Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;";

1.2 数据库连接方法

连接到数据库的方法可以通过ADO.NET中提供的SqlConnection类进行连接。

public static SqlConnection OpenConnection(string connectionString)
{
    SqlConnection connection = new SqlConnection(connectionString);
    connection.Open();
    return connection;
}

2.查询操作

在进行查询操作时,可以使用SqlCommand类和SqlDataReader类执行查询并返回结果。下面是一条SQL查询的封装方法。

public static DataTable ExecuteQuery(string connectionString, string queryString, CommandType commandType, params SqlParameter[] parameters)
{
    using (SqlConnection connection = OpenConnection(connectionString))
    {
        using (SqlCommand command = new SqlCommand(queryString, connection))
        {
            command.CommandType = commandType;
            if (parameters != null && parameters.Length > 0)
            {
                command.Parameters.AddRange(parameters);
            }
            using (SqlDataReader reader = command.ExecuteReader())
            {
                DataTable table = new DataTable();
                table.Load(reader);
                return table;
            }
        }
    }
}

3.插入操作

插入操作使用SqlCommand类的ExecuteNonQuery方法执行INSERT语句。下面是一条SQL插入的封装方法。

public static int ExecuteNonQuery(string connectionString, string queryString, CommandType commandType, params SqlParameter[] parameters)
{
    using (SqlConnection connection = OpenConnection(connectionString))
    {
        using (SqlCommand command = new SqlCommand(queryString, connection))
        {
            command.CommandType = commandType;
            if (parameters != null && parameters.Length > 0)
            {
                command.Parameters.AddRange(parameters);
            }
            int result = command.ExecuteNonQuery();
            return result;
        }
    }
}

示例1:查询学生表

下面是一个查询学生表格的示例代码,查询结果将放入DataTable中返回。

string connectionString = "Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;";
string queryString = "SELECT * FROM Students WHERE Age > @Age";
SqlParameter parameter = new SqlParameter("@Age", 18);
DataTable table = DBHelper.ExecuteQuery(connectionString, queryString, CommandType.Text, parameter);

示例2:添加学生记录

下面是一个添加学生记录的示例代码,返回值为影响的行数。

string connectionString = "Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;";
string queryString = "INSERT INTO Students (Name, Age) VALUES (@Name, @Age)"
SqlParameter[] parameters = new SqlParameter[] {
    new SqlParameter("@Name", "张三"),
    new SqlParameter("@Age", 19)
};
int result = DBHelper.ExecuteNonQuery(connectionString, queryString, CommandType.Text, parameters);

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#(.NET)数据访问连接、查询、插入等操作的封装类 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • C#将html table 导出成excel实例

    下面是关于“C#将html table 导出成excel实例”的完整攻略。 1. 环境准备 在使用C#将HTML表格导出为Excel之前,需要确保安装并引用以下两个库: EPPlus :一个用于创建和读取Excel的开源库,可在 Nuget 上查找和安装。 HtmlAgilityPack: 一个用于处理HTML文档的开源库,可在 Nuget 上查找和安装。 …

    C# 2023年6月2日
    00
  • c# 连接access数据库config配置

    想要通过C#连接Access数据库,需要先进行config配置(在app.config中配置),然后使用System.Data.OleDb命名空间中的类进行连接和操作。 步骤如下: 1.在app.config中添加config配置 在app.config文件的<configuration>标签下添加以下代码: <connectionStri…

    C# 2023年6月2日
    00
  • c#使用process.start启动程序报错解决方法

    下面为你讲解一下“c#使用process.start启动程序报错解决方法”的完整攻略。 问题描述 在使用 C# 的 Process.Start() 方法启动程序时,可能会遇到以下报错信息: System.ComponentModel.Win32Exception (0x80004005): 系统找不到指定的文件。 at System.Diagnostics.…

    C# 2023年5月15日
    00
  • C#实现单例模式的6种方法小结

    C#实现单例模式的6种方法小结 什么是单例模式? 单例模式是一种软件设计模式,它限制了某个类只能有一个实例,并且该实例可以从全局访问。单例模式通常用于控制资源的共享,并且可以避免竞态条件(race condition)。 单例模式的优点 单例模式可以保证某个类在全局范围内只有一个对象实例,这可以减少系统中的内存占用和资源消耗 单例模式可以确保某些操作只会被执…

    C# 2023年5月15日
    00
  • C#中Try-Catch语句真的影响程序性能吗?

    C#中的异常处理机制是通过Try-Catch语句实现的,它是一种优秀的编程习惯,可以有效地帮助我们处理程序中可能出现的未知异常情况。然而,也有一些人认为Try-Catch语句会对程序性能产生一定的影响,那么这个说法真的是正确的吗?本文就为大家详细讲解“C#中Try-Catch语句真的影响程序性能吗”的问题。 Try-Catch语句对程序性能的影响 Try-C…

    C# 2023年5月15日
    00
  • C#中的==运算符用法讲解

    下面是关于“C#中的==运算符用法讲解”的完整攻略。 1. 介绍 ==运算符是用于比较两个值是否相等的运算符,可以用于比较数值、字符、字符串等类型的数据。在C#中,==运算符是值类型和引用类型的比较符。 2. 值类型比较 对于值类型,使用==运算符比较时,比较的是它们的值是否相等。 例如,以下示例代码演示了如何比较两个整数是否相等: int a = 1; i…

    C# 2023年5月15日
    00
  • 获取asp.net服务器控件的客户端ID和Name的实现方法

    获取 ASP.NET 服务器控件的客户端 ID 和 name,可以采用多种方法。下面提供了两种常用的方法: 方法一:使用<%= %>标记 在 ASP.NET 中,可以使用 <%= %> 标记从服务端代码中注入JavaScript代码,从而获取服务器控件的客户端 ID 和 name。 例如,下面的示例演示了如何使用 <%= %&g…

    C# 2023年6月3日
    00
  • C# 特殊的string类型详解

    C# 特殊的string类型详解 什么是C#中的string类型 在C#中,字符串被定义为一系列字符的序列。C#中的string类型是个类,因此声明一个字符串时需要使用string关键字。例如: string myString = "Hello, world!"; 在上面的代码中,我们声明了一个字符串变量myString,并且将字符串常量…

    C# 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部