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#设计模式之单例模式

    我来给您讲解一下“解析C#设计模式之单例模式”的完整攻略。 一、什么是单例模式? 单例模式是一种常用的设计模式,它保证了一个类只能有一个实例,并提供一个全局访问点。 二、为什么要使用单例模式? 在很多场景中,我们需要保证某个类只拥有一个实例。比如唯一的数据库连接池、全局的日志对象等等。如果没有单例模式,我们每次都需要手动控制实例数量,这会带来很多问题。 三、…

    C# 2023年5月31日
    00
  • C# 字节数组、各进制字符串数据互转

    前言 上位机开发过程中,格式转换是必不可少的重要环节,经常是十进制转十六进制、十六进制转byte数组又转换回来来回转换,最然进制转换很基础同时 C# 也提供了很多直接方便进行格式转换的方法,但是封装一个工具类会方便很多,不用每次都手写代码逻辑,之前一直都是简单的自己写,稍复杂的就用前辈写好的直接调用,这次自己写一个。 简单的定义为一行代码完事,多一行都不写?…

    C# 2023年4月27日
    00
  • C#程序员应该养成的程序性能优化写法

    下面我将为您详细讲解C#程序员应该养成的程序性能优化写法,包含一个完整的攻略以及两条示例说明。 攻略 1. 明确性能优化的目标 在进行性能优化之前,需要先明确性能优化的目标,以及需要优化的具体内容,例如响应时间、内存占用等。只有明确了目标,程序员才能有针对性地进行优化。 2. 使用高效的数据结构 对于大规模数据处理的情况,使用高效的数据结构可以极大地提高程序…

    C# 2023年6月1日
    00
  • c# 类型的字段和方法设计建议

    下面来详细讲解 “c# 类型的字段和方法设计建议” 的完整攻略。 1. 建议在字段中使用自动属性 在定义类型的字段时,可以使用自动属性来简化代码。自动属性与传统的字段定义不同,后者需要定义字段和访问器方法(Getter/Setter),而自动属性可以在定义字段时直接定义 Getter 和 Setter 方法。举个例子: public class Person…

    C# 2023年6月1日
    00
  • 轻松学习C#的密封类

    当你想要将一个类定义为不可继承时,你可以将这个类标记为密封类。C#中的密封类与Java中的final类相似,不允许其他类继承它。 如何定义一个密封类? 在C#中,我们可以通过在类的前面添加 sealed 关键字来定义一个密封类。例如: sealed class MySealedClass { // 类定义 } 密封类的特点 密封类不能被其他类继承。 密封类一…

    C# 2023年5月15日
    00
  • c# DataDirectory的用法

    C#中的DataDirectory是一种特殊的指向当前应用程序的数据目录的占位符,该目录通常是在应用程序根目录下的一个子文件夹中。 DataDirectory是一个环境变量,可以用于访问连接到当前应用程序的数据库文件。 使用DataDirectory可以使程序实现更高效的数据访问,因为它可以减少数据库连接字符串中需要硬编码路径的数量,并使程序更加灵活和可移植…

    C# 2023年6月1日
    00
  • C#实现简单的字符串加密

    下面我给你详细讲解一下C#实现简单的字符串加密的完整攻略。 一、加密算法的选择 字符串加密可以采用多种算法,这里我们使用最简单的一种——Caesar密码算法。该算法原理是将字符串中的每个字符按照一定数目的偏移量加密,解密时再将字符按照相同的偏移量向相反的方向偏移即可。 二、编写加密函数 接下来我们来编写一个加密函数。假设加密偏移量为3,我们将该函数命名为En…

    C# 2023年6月6日
    00
  • 浅析C#静态类,静态构造函数,静态变量

    C# 静态类,静态构造函数,静态变量 静态类 在C#中,静态类是一种只包含静态成员的类。不能被实例化,也不能被继承。常用于定义全局函数或者全局变量。 定义方式: static class MyStaticClass { // 静态成员 public static void MyStaticMethod() { Console.WriteLine("…

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