-
.NET CORE) MySqlCommand와 MySqlDataAdapter 차이 (여러번 select)Programing Language/.Net Core 2022. 10. 27. 17:44728x90반응형MySQL 데이타 읽기MySQL의 데이타를 가져오기 위해서는 MySqlCommand/MySqlDataReader 혹은 MySqlDataAdapter를 사용한다. MySqlDataReader는 연결모드로 데이타를 서버에서 가져오는 반면, MySqlDataAdapter는 한꺼번에 클라이언트 메모리로 데이타를 가져온후 연결을 끊는다. MySqlDataAdapter에서 가져온 데이타는 주로 DataSet 객체 안에 메모리상의 테이블 형태로 존재하는데, 이를 각종 컨트롤들에게 바인딩시킬 수 있다.
예제
private static void SelectUsingReader() { string connStr = "Server=localhost;Database=test;Uid=root;Pwd=zzz;"; using (MySqlConnection conn = new MySqlConnection(connStr)) { conn.Open(); string sql = "SELECT * FROM Tab1 WHERE Id>=2"; //ExecuteReader를 이용하여 //연결 모드로 데이타 가져오기 MySqlCommand cmd = new MySqlCommand(sql, conn); MySqlDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine("{0}: {1}", rdr["Id"], rdr["Name"]); } rdr.Close(); } } private static void SelectUsingAdapter() { DataSet ds = new DataSet(); string connStr = "Server=localhost;Database=test;Uid=root;Pwd=zzz;"; using (MySqlConnection conn = new MySqlConnection(connStr)) { //MySqlDataAdapter 클래스를 이용하여 //비연결 모드로 데이타 가져오기 string sql = "SELECT * FROM Tab1 WHERE Id>=2"; MySqlDataAdapter adpt = new MySqlDataAdapter(sql, conn); adpt.Fill(ds, "Tab1"); } foreach (DataRow r in ds.Tables[0].Rows) { Console.WriteLine(r["Name"]); } }
728x90반응형'Programing Language > .Net Core' 카테고리의 다른 글
C#) get property 값으로 update 쿼리문 만들기 (0) 2022.12.13 C#) multi Insert Sql 작성법 (mysql) (0) 2022.11.29 C#) 오늘 기준으로 날짜 더하고 빼기 (0) 2022.11.14 .NET CORE) mysql의 sql의 Count 쿼리문 간단하게 사용하기 (0) 2022.10.26 .NET CORE 6) appsettings.<env>.json 파일 다른 파일에서 사용하기(프로젝트에서 환경변수 사용) (0) 2022.10.24