2010. 4. 2. 19:12
SQlDataReader - SQL Server 데이터베이스 에서 데이터를 가져올수 있게 해주는 클래스



주요 메소드

Close - SqlDataReader 개체를 닫음
NextResult - SqlDataReader를 다음 결과로 이동한다.
Read - SqlDataReader를 다음 레코드로 이동한다.



 string connString = "server = 504-12\\SQL2005;database=tempdb;";

 connString = connString + "uid=Man;password=0000;";
 SqlConnection sConnection = new SqlConnection(connString);
 SqlCommand myCom = new SqlCommand(null, sConnection);

 myCom.Connection = sConnection;

 myCom.CommandText = "select * from j_table";
 myCom.Connection.Open();

SqlDataReader sdr  = myCom.ExecuteReader();

// SqlDataReader를 만들려면, 생성자를 직접 사용하지 않고 SqlCommand 개체의ExcuteReader 메서드를 호출해야 한다.

데이터 가져오는 방법1 - Item 속성 이용

            while (sdr.Read()) //다음 레코드가 없을때까지 계속 돌린다.
            {
                Console.Write("m_id : " + sdr["m_name"].ToString());
                Console.Write("   m_age : " + sdr["m_age"].ToString());
                Console.WriteLine();
            }

데이터 가져오는 방법2 - Get+ 데이터 이용 , 처리효율이 높다!

            while (sdr.Read()) //다음 레코드가 없을때까지 계속 돌린다.
            {
                Console.Write("m_id : " + sdr.GetString(0).ToString());
                Console.Write("   m_age : " + sdr.GetInt16(0).ToString());
                Console.WriteLine();
            }                       
            
            sdr.Close();   // SqlDataReader를 사용하고있으면 SqlConnection에서 다른 작업을 할 수 없으므로 Close메소드를 호출해준다.

            myCom.CommandText = "select count(*) from j_table";
            Console.WriteLine("count : " + myCom.ExecuteScalar().ToString());  //쿼리를 실행한 결과를 반환
            myCom.Connection.Close();

'.NET > ADO.NET' 카테고리의 다른 글

DataSet  (0) 2010.04.02
DataView  (0) 2010.04.02
SqlParameter 클래스  (0) 2010.03.31
SqlCommand 클래스  (0) 2010.03.31
Connetion  (0) 2010.03.31
Posted by 아몰라