C#访问SQL Server数据库的实现方法

下面就为您详细讲解“C#访问SQL Server数据库的实现方法”的完整攻略。整个攻略主要围绕以下几个方面展开:

  1. 连接SQL Server数据库
  2. 执行SQL语句
  3. 读取数据库数据
  4. 更新数据库数据
  5. 关闭数据库连接

接下来我们将依次对以上5点进行详细的说明。

  1. 连接SQL Server数据库

在C#中,我们可以通过 SqlConnection 类来连接 SQL Server 数据库。具体步骤如下:

string connectionString = "Data Source=YourServerName;Initial Catalog=YourDatabaseName;User ID=YourUserName;Password=YourPassword;";
SqlConnection connection = new SqlConnection(connectionString);
try
{
    connection.Open();
    // 这里我们可以在控制台输出连接成功的信息,以供调试时使用。
    Console.WriteLine("数据库连接成功!");
}
catch (Exception ex)
{
    Console.WriteLine("数据库连接失败!错误信息:" + ex.Message);
    // 这里我们可以编写相应的异常处理代码。
}
finally
{
    connection.Close(); // 这里记得要关闭数据库连接。
}

在这段代码中,我们首先定义了一个名为 connectionString 的字符串变量,用于存储连接字符串,其中包含了连接数据库需要用到的服务器名、数据库名、用户名、密码等信息。然后我们创建了一个 SqlConnection 类型的对象 connection,并使用 Open() 方法来打开数据库连接。在这里我们还为连接成功和失败编写了相应的输出代码,并使用 finally 块来确保关闭连接。

  1. 执行SQL语句

成功连接到 SQL Server 数据库之后,我们就可以开始执行 SQL 语句了。C# 提供了 SqlCommand 类来执行 SQL 语句。具体步骤如下:

string sql = "INSERT INTO YourTableName (Col1, Col2, Col3) VALUES ('Value1', 'Value2', 123)";
SqlCommand command = new SqlCommand(sql, connection);
try
{
    int n = command.ExecuteNonQuery();
    Console.WriteLine("执行成功,受影响的行数为:" + n);
}
catch (Exception ex)
{
    Console.WriteLine("执行失败!错误信息:" + ex.Message);
}

在这段代码中,我们创建了一个名为 sql 的字符串变量,用于存储我们需要执行的 SQL 语句。然后我们创建了一个 SqlCommand 类型的对象 command,并将 sql 和前面创建的 connection 对象作为参数传递给它。最后使用 ExecuteNonQuery() 方法执行 SQL 语句,并为执行成功和失败编写了相应的输出代码。

  1. 读取数据库数据

如果我们需要从 SQL Server 数据库中读取数据,可以使用 SqlDataReader 类。具体步骤如下:

string sql = "SELECT Col1, Col2, Col3 FROM YourTableName WHERE Col1 = 'Value1'";
SqlCommand command = new SqlCommand(sql, connection);
try
{
    SqlDataReader reader = command.ExecuteReader();
    while (reader.Read())
    {
        Console.WriteLine("Col1:" + reader.GetString(0) + ", Col2:" + reader.GetString(1) + ", Col3:" + reader.GetInt32(2));
    }
    reader.Close();
}
catch (Exception ex)
{
    Console.WriteLine("执行失败!错误信息:" + ex.Message);
}

在这段代码中,我们创建了一个名为 sql 的字符串变量,用于存储我们需要执行的 SQL 语句。然后我们创建了一个 SqlCommand 类型的对象 command,并将 sql 和前面创建的 connection 对象作为参数传递给它。然后使用 ExecuteReader() 方法执行 SQL 语句,并创建一个 SqlDataReader 类型的对象 reader 来读取返回的数据。在 while 循环中我们使用 reader 来读取每一条数据,并进行处理。最后使用 Close() 方法关闭 reader 对象。

  1. 更新数据库数据

如果我们需要修改 SQL Server 数据库中的数据,可以使用 ExecuteNonQuery() 方法来执行 UPDATE 或 DELETE 语句。具体步骤如下:

string sql = "UPDATE YourTableName SET Col2 = 'NewValue' WHERE Col1 = 'Value1'";
SqlCommand command = new SqlCommand(sql, connection);
try
{
    int n = command.ExecuteNonQuery();
    Console.WriteLine("执行成功,受影响的行数为:" + n);
}
catch (Exception ex)
{
    Console.WriteLine("执行失败!错误信息:" + ex.Message);
}

在这段代码中,我们创建了一个名为 sql 的字符串变量,用于存储我们需要执行的 SQL 语句。然后我们创建了一个 SqlCommand 类型的对象 command,并将 sql 和前面创建的 connection 对象作为参数传递给它。最后使用 ExecuteNonQuery() 方法执行 SQL 语句,并为执行成功和失败编写了相应的输出代码。需要注意的是,在 UPDATE 或 DELETE 语句中,我们需要明确指定需要更新或删除的数据行。

  1. 关闭数据库连接

为了避免占用数据库资源,我们需要在使用完数据库之后及时关闭连接。具体步骤如下:

connection.Close();

在这里我们直接调用 SqlConnection 类的 Close() 方法来关闭连接。

示例:

以下是一个将从用户输入中获取数据并插入到数据库中的示例:

Console.Write("请输入 Col1 值:");
string col1 = Console.ReadLine();
Console.Write("请输入 Col2 值:");
string col2 = Console.ReadLine();
Console.Write("请输入 Col3 值:");
int col3 = Convert.ToInt32(Console.ReadLine());

string connectionString = "Data Source=YourServerName;Initial Catalog=YourDatabaseName;User ID=YourUserName;Password=YourPassword;";
SqlConnection connection = new SqlConnection(connectionString);
try
{
    connection.Open();
    Console.WriteLine("数据库连接成功!");

    string sql = "INSERT INTO YourTableName (Col1, Col2, Col3) VALUES (@Col1, @Col2, @Col3)";
    SqlCommand command = new SqlCommand(sql, connection);
    command.Parameters.AddWithValue("@Col1", col1);
    command.Parameters.AddWithValue("@Col2", col2);
    command.Parameters.AddWithValue("@Col3", col3);

    int n = command.ExecuteNonQuery();
    Console.WriteLine("执行成功,受影响的行数为:" + n);
}
catch (Exception ex)
{
    Console.WriteLine("执行失败!错误信息:" + ex.Message);
}
finally
{
    connection.Close();
}

在这个示例中,我们通过 Console.ReadLine() 方法从用户输入中获取了三个数据项 Col1、Col2、Col3,并使用了参数化的 SQL 语句将这些数据插入到数据库中。需要注意的是,我们在 SQL 语句中使用了参数 @Col1、@Col2、@Col3,而不是直接插入数据,这是为了防止 SQL 注入攻击。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#访问SQL Server数据库的实现方法 - Python技术站

(0)
上一篇 2023年6月1日
下一篇 2023年6月1日

相关文章

  • DropDownList获取的SelectIndex一直为0的问题

    该问题一般出现在在使用ASP.NET开发Web应用程序时,使用DropDownList控件绑定数据源后无法正确获取所选项索引(SelectIndex)的情况。解决该问题的方法如下: 1.数据源绑定前确保AutoPostBack属性为True 有时候,当DropDownList控件的AutoPostBack属性设置为False时,可能会导致绑定数据源后Sele…

    C# 2023年5月31日
    00
  • NET页面导出Excel实例代码

    首先,要实现.NET页面导出Excel功能,需要用到以下两个类库: NPOI:用于操作Excel文档的类库。 Microsoft.AspNet.WebApi.Core:用于处理Web API相关请求与响应的类库。 下面是一个.NET页面导出Excel的典型实现步骤: 步骤一:创建Web API控制器 在.NET项目中创建一个Web API控制器,用于处理导出…

    C# 2023年5月31日
    00
  • 浅谈C#中的委托、事件与异步

    浅谈C#中的委托、事件与异步攻略 委托 在 C# 中,委托是一个类,它可以封装一个或多个方法。委托是作为参数传递的。通过将方法指定为委托,可以将方法传递给其他方法。这些方法都以相同的委托类型作为参数和返回类型。 声明一个委托: delegate void MyDelegate(string message); 使用委托: public static void…

    C# 2023年6月6日
    00
  • 浅析依赖注入框架Autofac的使用

    浅析依赖注入框架Autofac的使用 什么是依赖注入 依赖注入(Dependency Injection,DI)是一种设计模式,它可以将组件的依赖关系设计清晰、易于维护、易于测试。依赖注入主要是通过构造函数、属性和接口注入的方式将组件依赖关系解耦。在DI中,组件不再关注如何获取依赖组件,而是将依赖的对象交由其他组件来注入。 Autofac框架简介 Autof…

    C# 2023年5月31日
    00
  • C#中使用ADOMD.NET查询多维数据集的实现方法

    C#中使用ADOMD.NET查询多维数据集的实现方法 1. 什么是ADOMD.NET ADOMD.NET是一种数据访问技术,用于查询和管理多维数据源中的数据。它是.NET Framework的一部分,被设计用作访问和查询分析服务多维数据源和数据挖掘模型的.NET组件。 2. ADOMD.NET的安装 在使用ADOMD.NET前,需要先安装Microsoft®…

    C# 2023年6月2日
    00
  • PowerShell中的加法运算详解

    那我就为您详细讲解一下“PowerShell中的加法运算详解”。 一、加法运算简介 在PowerShell中,加法运算使用“+”符号表示。加法运算可以完成两种类型的操作: 两个数字相加 使用加法运算,可以将两个数相加,然后得出它们的和。 # 例1:将数字1和数字2相加 PS C:\> $a = 1 PS C:\> $b = 2 PS C:\&gt…

    C# 2023年6月8日
    00
  • .net后台代码调用前台JS的两种方式

    你可以按照以下步骤来进行。 步骤一:引入前端JS文件 在实现后台调用前台JS的功能之前,首先需要在HTML页面引入JS文件。我们可以使用以下代码引入JS文件: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo…

    C# 2023年5月31日
    00
  • MVC 5 第一章 创建MVC 5 web应用程序

    下面是关于“MVC 5 第一章 创建MVC 5 web应用程序”的完整攻略,主要包含以下内容: 创建MVC 5 web应用程序的步骤 每个步骤所涉及到的具体操作 两条示例说明 1. 创建MVC 5 web应用程序的步骤 创建MVC 5 web应用程序的步骤主要包括以下几个方面: 创建项目 配置项目 创建控制器 创建模型 创建视图 2. 每个步骤所涉及到的具体…

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