개발 공부/C# 학습

[C# 학습] SqlConnection, SqlCommand, SqlDataAdapter

아밍나 2022. 10. 24. 11:05
728x90

SqlConnection 클래스

SQL Server를 접속하기 위한 클래스.

 

SQL 서버를 사용하려면 클라이언트 프로그램이 먼저 서버와 접속해야 함.

→ 접속 시 사용하는 Connection String 필요.

→ 서버 명, 인증 방법, 초기 DB명 등 지정.

 

예시)

//1
string strConn1 = "Data Source=[서버 주소];Initial Catalog=[DB명];Integrated Security=SSPI;";
//2
string strConn2 = "Data Source=[서버 주소];Initial Catalog=[DB명];User ID=[아이디];Password=[비밀번호];";
SqlConnection conn = new SqlConnection(strConn);
conn.Open();

...

conn.Close();

SqlCommand 클래스

SQL 서버에 어떤 명령을 내리기 위해 사용하는 클래스.

 

SELECT, INSERT, UPDATE, DELETE와 같은 DML 문장을 실행할 때 사용.

 

예시)

string strConn = "Data Source= ... ;";
string sql = "SELECT * FROM Table1";

using(SqlConnection conn = new SqlConnection(strConn))
{
    conn.Open();
    SqlCommand cmd = new SqlCommand(sql, conn);
    SqlDataReader rdr = cmd.ExecuteReader();
}

SqlDataAdapter 클래스

SQL Server에서 데이터를 클라이언트로 가져온 후 연결을 끊고(Disconnected mode) 데이터를 사용할 수 있게 하는 클래스.

 

가져온 데이터를 메모리상의 데이터 객체인 DataSet에 할당.

 DataSet 객체는 다시 컨트롤(WinForms의 DataGridView 컨트롤)에 데이터 바인딩 소스로 사용할 수 있다.

 

예시)

string strConn = "Data Source= ... ;";
public DataSet GetProduct()
{
    DataSet ds = new DataSet();
    SqlConnection conn = new SqlConnection(strConn);
    conn.Open();

    string sql = "SELECT * FROM Table1";

    //SqlDataAdapter 초기화
    SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
    //Fill 메서드: 결과 DataSet을 리턴 받음.
    adapter.Fill(ds);
    conn.Close();
    return ds;
}

using 키워드

해당 블럭이 끝나면 자동으로 Dispose() 메서드를 호출.

 

Unmanaged Resource를 사용하는 모든 클래스는 IDisposable 인터페이스를 구현하기 때문에 using 문을 사용하여 자동으로 리소스를 해지하면 편리하다.

→ SqlConnection, SqlCommand, SqlDataReader가 이에 해당 됨.

 

using(SqlConnection conn = new SqlConnection(strConn))
{
    conn.Open();
    ...
}

 

 

 

 

 

 

 

 

 


참고 사이트)

https://www.csharpstudy.com/Data/SQL-connection.aspx

 

C# SqlConnection - C# 프로그래밍 배우기 (Learn C# Programming)

C# SqlConnection 클래스 ADO.NET의 SqlConnection 클래스는 SQL Server를 접속하기 위한 클래스이다. SQL 서버를 사용하기 위해서는 클라이언트 프로그램은 SqlConnection을 사용하여 먼저 서버와 접속을 해야한

www.csharpstudy.com

https://www.csharpstudy.com/Data/SQL-command.aspx

 

C# SqlCommand - C# 프로그래밍 배우기 (Learn C# Programming)

C# SqlCommand 클래스 SqlCommand 클래스는 SQL 서버에 어떤 명령을 내리기 위해 사용하는 클래스이다. SQL 테이블로부터 데이타를 가져오거나(SELECT), 테이블 내용을 삽입(INSERT), 갱신(UPDATE), 삭제(DELETE)

www.csharpstudy.com

https://www.csharpstudy.com/Data/SQL-dataadapter.aspx

 

C# SqlDataAdapter - C# 프로그래밍 배우기 (Learn C# Programming)

C# SqlDataAdapter 클래스 SqlDataAdapter 클래스는 SQL Server에서 데이타를 클라이언트로 가져온 후 연결을 끊고 데이타를 사용할 수 있게 하는 클래스이다. SqlDataReader는 연결을 유지하는 (Connected mode) 반

www.csharpstudy.com

 

728x90
반응형