C# SQL Server 데이터베이스 기본 작업(추가, 삭제, 수정, 확인)

데이터베이스에 C# 연결하는 것은 매우 중요한 작업입니다.소프트웨어 개발에서는 일반적으로 데이터베이스에 데이터를 저장해야 하며 응용 프로그램에서 데이터베이스와 상호 작용하기 위해 C# 코드를 사용해야 합니다. 이 기사에서는 C#을 사용하여 데이터베이스에 연결하는 방법과 일반적인 CRUD 작업을 완료하는 방법을 배웁니다.

1. 데이터베이스에 연결

먼저 데이터베이스에 연결하려면 System.Data.SqlClient 네임스페이스에서 SqlConnection 클래스를 사용해야 합니다. 다음은 Microsoft SQL Server 데이터베이스에 연결하는 기본적인 예입니다.

using System.Data.SqlClient;

string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase; User ID=myUsername;Password=myPassword;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    //打开数据库连接
    connection.Open();

    //执行数据库操作
    //...

}
catch (Exception ex)
{
    //处理异常
    Console.WriteLine(ex.Message);
}
finally
{
    //关闭数据库连接
    connection.Close();
}

위의 코드에서 데이터베이스의 서버 이름, 데이터베이스 이름, 사용자 이름 및 암호와 같은 정보를 포함하는 연결 문자열을 정의했습니다. 그런 다음 SqlConnection 클래스를 사용하여 연결 개체를 만들고 Open 메서드를 사용하여 데이터베이스 연결을 엽니다. 연결이 성공한 후 관련 작업을 수행할 수 있습니다.

2. 데이터 증가

데이터베이스에 데이터를 추가하려면 SqlCommand 클래스와 ExecuteNonQuery 메서드를 사용해야 합니다. 다음은 새 학생 정보를 학생 테이블에 추가하는 예입니다.

using System.Data.SqlClient;

string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase; User ID=myUsername;Password=myPassword;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    //打开数据库连接
    connection.Open();

    //定义SQL语句
    string sql = "INSERT INTO Students (Name, Age, Gender) VALUES ('John', 20, 'Male');";

    //创建SqlCommand对象
    SqlCommand command = new SqlCommand(sql, connection);

    //执行SQL语句
    int rowsAffected = command.ExecuteNonQuery();
    Console.WriteLine("Rows Affected: " + rowsAffected);
}
catch (Exception ex)
{
    //处理异常
    Console.WriteLine(ex.Message);
}
finally
{
    //关闭数据库连接
    connection.Close();
}

위의 코드에서 데이터베이스에 성공적으로 연결하고 SqlCommand 클래스를 사용하여 SQL 문을 정의했습니다. 그런 다음 SqlCommand 개체를 만들고 매개 변수로 SQL 문과 데이터베이스 연결을 전달했습니다. 다음으로 ExecuteNonQuery 메서드를 호출하여 SQL 문을 실행하고 영향을 받는 행 수를 반환합니다.

3. 데이터 삭제

데이터베이스에서 데이터를 삭제하려면 동일한 방법을 사용하여 삭제할 데이터 행을 지정하고 DELETE 명령을 사용할 수 있습니다. 다음은 학생 테이블에서 지정된 이름의 학생 정보를 삭제하는 예입니다.

using System.Data.SqlClient;

string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase; User ID=myUsername;Password=myPassword;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    //打开数据库连接
    connection.Open();

    //定义SQL语句
    string sql = "DELETE FROM Students WHERE Name = 'John';";

    //创建SqlCommand对象
    SqlCommand command = new SqlCommand(sql, connection);

    //执行SQL语句
    int rowsAffected = command.ExecuteNonQuery();
    Console.WriteLine("Rows Affected: " + rowsAffected);
}
catch (Exception ex)
{
    //处理异常
    Console.WriteLine(ex.Message);
}
finally
{
    //关闭数据库连接
    connection.Close();
}

위의 코드에서는 동일한 방법을 사용하여 데이터베이스에 연결하고 DELETE 명령을 사용하여 학생 테이블에서 "John"이라는 학생을 삭제합니다.

4. 데이터 업데이트

데이터베이스의 데이터를 업데이트하려면 UPDATE 명령을 사용할 수 있습니다. 다음은 지정된 학생의 나이를 Students 테이블의 새 값으로 업데이트하는 예입니다.

using System.Data.SqlClient;

string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase; User ID=myUsername;Password=myPassword;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    //打开数据库连接
    connection.Open();

    //定义SQL语句
    string sql = "UPDATE Students SET Age = 21 WHERE Name = 'John';";

    //创建SqlCommand对象
    SqlCommand command = new SqlCommand(sql, connection);

    //执行SQL语句
    int rowsAffected = command.ExecuteNonQuery();
    Console.WriteLine("Rows Affected: " + rowsAffected);
}
catch (Exception ex)
{
    //处理异常
    Console.WriteLine(ex.Message);
}
finally
{
    //关闭数据库连接
    connection.Close();
}

위의 코드에서 UPDATE 명령을 사용하여 "John"이라는 학생의 나이를 21세로 업데이트합니다.

5. 쿼리 데이터

데이터베이스에서 데이터를 쿼리하려면 다른 명령 중에서 SELECT 명령을 사용할 수 있습니다. 다음은 학생 테이블의 모든 학생 정보를 조회하는 예이다.

using System.Data.SqlClient;

string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase; User ID=myUsername;Password=myPassword;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    //打开数据库连接
    connection.Open();

    //定义SQL语句
    string sql = "SELECT * FROM Students;";

    //创建SqlCommand对象
    SqlCommand command = new SqlCommand(sql, connection);

    //执行SQL语句
    SqlDataReader dataReader = command.ExecuteReader();

    //遍历查询结果
    while (dataReader.Read())
    {
        Console.WriteLine("{0}\t{1}\t{2}", dataReader["Name"], dataReader["Age"], dataReader["Gender"]);
    }

    //关闭DataReader
    dataReader.Close();
}
catch (Exception ex)
{
    //处理异常
    Console.WriteLine(ex.Message);
}
finally
{
    //关闭数据库连接
    connection.Close();
}

위의 코드에서는 SELECT 명령을 사용하여 학생 테이블의 모든 학생 정보를 쿼리합니다. SqlDataReader 인스턴스를 만들고 해당 Read 메서드를 사용하여 쿼리 결과를 트래버스하고 마지막으로 Close 메서드를 호출하여 닫습니다.

요약하다

C#에서 데이터베이스에 연결하려면 System.Data.SqlClient 네임스페이스에서 SqlConnection, SqlCommand 및 SqlDataReader와 같은 클래스를 사용해야 합니다. 데이터베이스에 연결할 때 데이터베이스 연결 문자열을 지정해야 하며 SqlCommand를 사용할 때 올바른 SQL 문과 연결 개체를 제공해야 합니다. 이러한 클래스를 사용하여 일반적인 CRUD 작업은 물론 다른 많은 작업을 쉽게 수행할 수 있습니다. 데이터베이스 연결 방법을 마스터하면 우수한 C# 애플리케이션을 더 쉽게 개발할 수 있습니다.

추천

출처blog.csdn.net/naer_chongya/article/details/130411520