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日

相关文章

  • C#操作DataTable方法实现过滤、取前N条数据及获取指定列数据列表的方法

    C#操作DataTable方法实现过滤、取前N条数据及获取指定列数据列表的方法 过滤数据 若要对DataTable进行筛选,我们可以通过DefaultView.RowFilter属性实现数据过滤。具体的操作步骤如下: DataTable dt = new DataTable(); //假设DataTable已经有数据了 //设置过滤条件 string fil…

    C# 2023年5月31日
    00
  • C#使用log4net记录日志的方法步骤

    请看以下步骤: 第一步:添加log4net依赖 如果你使用的是nuget包管理器,可以在项目中直接添加log4net的nuget依赖;如果你需要手动添加log4net,可以在官网下载最新版的log4net,并将log4net.dll文件添加到项目的引用中。 第二步:在项目中添加log4net的配置文件 log4net的配置文件是一个xml文件,用来配置log…

    C# 2023年5月15日
    00
  • java根据不同的参数调用不同的实现类操作

    要实现根据不同的参数调用不同的实现类操作,我们可以使用工厂模式来解决。 工厂模式 工厂模式是一种创建型设计模式,用于创建对象,而无需指定将使用哪个类来创建对象。它定义一个接口或抽象类,其实现类或子类来决定要实例化的类。这使得我们可以将对象的实例化延迟到子类中进行。在工厂模式中,客户端不用关心产品是如何创建的,只关心需要什么产品。工厂模式的主要优点是它具有很高…

    C# 2023年6月1日
    00
  • python 如何实现跳过异常继续执行

    要实现跳过异常继续执行,可以使用 Python 中的 try-except 语句。try 块中包含可能出现异常的代码,except 块则定义了在出现异常时的响应。如果出现异常,程序会跳转到 except 块继续执行。下面是一个简单的示例: try: # 可能出现异常的代码 except: # 出现异常时执行的代码 如果上面的代码中 try 块中的代码出现了异…

    C# 2023年5月15日
    00
  • 解决navicat 链接oracle时出现的各种问题

    解决 Navicat 连接 Oracle 时出现的各种问题需要做以下几步: 1. 下载并安装 Oracle Instant Client 访问 Oracle 官网下载 Instant Client,需选择与你所使用操作系统相兼容的版本。下载的压缩包通常包含以下几个文件: instantclient-basiclite-linux.x64-xx.x.x.x.x…

    C# 2023年5月31日
    00
  • asp.net 仿微信端菜单设置实例代码详解

    接下来我会详细讲解一下“asp.net 仿微信端菜单设置实例代码详解”的攻略。 一、前言 在这篇文章中,我想向大家分享一下关于如何在ASP.NET中仿制微信端的菜单设置功能。这个例子包括了使用Bootstrap来渲染菜单、使用Ajax异步获取数据、使用Model绑定与EF数据持久化等等。希望这个文章能够对大家在学习ASP.NET的过程中提供一定的帮助。 二、…

    C# 2023年5月31日
    00
  • C# 实例化接口对象的方法

    C#中实例化接口对象的方法有两种:使用类实现接口和使用匿名类型实现接口。 使用类实现接口 定义一个接口 public interface IExampleInterface { void ExampleMethod1(); void ExampleMethod2(string exampleArg); } 创建实现该接口的类 public class Exa…

    C# 2023年6月1日
    00
  • C#中使用Microsoft Unity记录日志

    当我们的应用程序遇到错误时,我们需要及时捕获和记录错误信息以便于后期排查。在C#中使用Unity框架可以方便地实现日志记录,本文将详细讲解如何使用Unity框架记录日志。 1. 引入Unity框架 要使用Unity框架来记录日志,我们需要将Unity框架引入我们的项目中。我们可以通过NuGet程序包管理器来引入Unity框架。 Install-Package…

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