ADO.NET SqlDataReader class

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

Company Name 사회복지협의회 07V0047 윤재웅 09V0011 김정순 09V0017 김혜진 09V0051 정지윤 09V0057 최귀숙.
네트워크 프로그래밍 및 실습.
OpenCV 안드로이드 연동 환경설정 OpenCV-Android 를 다운 받습니다.
DB 프로그래밍 학기.
DB 프로그래밍 학기.
ADO.NET 부산IT직업전문학교 성 명 건.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
5강. Servlet 본격적으로 살펴보기-I 프로젝트 만들기 doGet() doPost()
최윤정 Java 프로그래밍 클래스 상속 최윤정
주)INVENTORNICS 노창배 소프트웨어 김 경 순
제 08 장 자바 빈즈 학기 인터넷비즈니스과 강 환수 교수.
Ch.07-5 xml-rpc 사용하기 김상엽.
Java로 배우는 디자인패턴 입문 Chapter 5. Singleton 단 하나의 인스턴스
JSP Programming with a Workbook
MySQL 및 Workbench 설치 데이터 베이스.
7장 배열 ②.
C# Programming Version 2.0 ADO.NET.
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
Lesson 6. 형변환.
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
Sql Data Table Summon Bit 18™ 오 태 경.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
KHS JDBC Programming 4 KHS
Java 6장. 클래스 : 속성 public class SumTest {
컴퓨터 프로그래밍 실습 #6 제 4 장 클래스 작성.
14. 예외처리.
10장. 예외처리.
11장. 1차원 배열.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
C#.
환경 설정 예제 데이터베이스 생성 - 그림 3.34의 SQL Server 관리 스튜디오 창의 왼쪽 영역의 데이터베
Method & library.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
CHAP 13. 방명록 만들기 실습.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Lesson 2. 기본 데이터형.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
USN(Ubiquitous Sensor Network)
에어 조건문.
ADO.NET (SqlConnection, SqlCommand)
C# O/R 디자이너- LINQ 이용.
자바 5.0 프로그래밍.
Power Java 제11장 상속.
JA A V W. 06.
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
Fucntion 요약.
CHAP 21. 전화, SMS, 주소록.
12. 상속 : 고급.
객체기반 SW설계 팀활동지 4.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
제 8장. 클래스의 활용 학기 프로그래밍언어및실습 (C++).
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
Chapter 10 데이터 검색1.
함수, 모듈.
MIDP 네트워크 프로그래밍 ps lab 김윤경.
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
maria db JDBC PROGRAMMING 5
장애인복지론.
 6장. SQL 쿼리.
                              데이터베이스 설계 및 실습 #6 - SQL 실습 한국외국어대학교 DaPS 연구실                              
7 생성자 함수.
6 객체.
20 XMLHttpRequest.
Presentation transcript:

ADO.NET SqlDataReader class 정보통신공학부 2005732080 최원호

Contents SqlReaderClass How to use Depth, FeildCount IsClosed (v) Item (v) RecordAffected Close (v) Get+ GetSql+ (v) GetDataTypeName GetFeildType GetName GetOrdinal GetSchemaTable GetSqlValue GetValue IsDBNull (v) NextResult Read (v) 체크된 항목을 실습에 사용 www.themegallery.com Company Logo

SqlDataReader Class SqlDataReaderClass? < 사용 예 > SQL Server 데이터베이스에서 행의 앞으로만 이동 가능한 스트림을 읽을 수 있게 합니다. 이 클래스는 상속될 수 없습니다. SqlDataReader를 만들려면, 생성자를 직접 사용하지 않고 SqlCommand 개체의 ExecuteReader 메서드를 호출해야 합니다. SqlDataReader가 사용 중이면, 관련 SqlConnection이 SqlDataReader를 사용하고 있으며, 이를 닫지 않으면 SqlConnection에서 다른 작업을 수행할 수 없습니다. 이런 상태는 SqlDataReader의 Close 메서드가 호출될 때까지 적용됩니다. 예를 들어 Close를 호출할 때까지 출력 매개 변수를 검색할 수 없습니다. < 사용 예 > < MyCon.Connection.Open() 이후 > www.themegallery.com Company Logo

SqlDataReader Class How to use. <table1> SqlDataReader를 사용하는 동안 관련 SqlConnection은 Sql작업만 진행한다. SqlReader를 사용한 작업이 완료되었을때에는 반드시 닫는 처리를 해준다. <table1> < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class Depth, FeildCount < 사용 예 > “Connection 생략” Depth : 행의 중첩수준(level), 가장 바깥쪽 테이블은 수준이 0이 된다. (SQL Server .NET Data Provider를 사용하는경우 중첩을 지원하지 않으므로 항상 0을 반환한다.) FieldCount : 열의 개수를 가져온다. 레코드셋이 유효하지 않을때 0을 반환한다.(Sql서버의 Instance에 대한 연결이 없는경우 NotSuttportedExeption 예외를 발생시킨다. < 사용 예 > “Connection 생략” public int Depth {get;} public int FieldCount {get;} <결과> www.themegallery.com Company Logo

SqlDataReader Class IsClosed < 사용 예 > “Connection 생략” IsClosed : SqlDataReader의 개체가 닫혀 있는가? 에 대한 리턴값으로 ture면 “닫힘” false면 “열림” 이 된다. 햇갈리지 말자 “개체가 닫혔는가? (IsClose)” “ㅇㅇ닫힘 (true)” or “ㄴㄴㄴ 안닫힘(false)” < 사용 예 > “Connection 생략” public int IsClosed {get;} <결과> www.themegallery.com Company Logo

SqlDataReader Class Item public object this[string] { get; } Item : 열 값을 기본 형식(Variant 형)으로 가져온다. Item속성은 처리 효율면에서는 열의 서수를 이용하는 속성의 경우보다 비 효율적이지만 시각적인 코드를 작성할 수 있게 한다. 처리효율이 중요하지 않고 유지 보수가 중요시 되는 솔루션을 개발하는 경우라면 Item 속성을 이용하는 것이 좋다. public object this[string] { get; } public object this[int] { get; } <결과> < 사용 예 > “Connection 생략” www.themegallery.com Company Logo

SqlDataReader Class RecordAffected public int RecordsAffected { get; } RecordAffected : 쿼리의 실행에 의해 변경되거나 추가되거나 삭제된 행의 개수를 보여준다. (단, Select문의 경우에는 검색된 행의 수를 의미 하지 않고 -1값을 반환하는 점이 다르다.) #주의 : 프로시저에서는 일괄처리를 하므로 누적된다. public int RecordsAffected { get; } < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class Close < 사용 예 > “Connection 생략” Close : Close메소드는 SqlDataReader 개체를 닫는 역할을 한다. SqlReader개체가 생성되었다면 적절한 시기에 Close 메소드를 사용하여 개체를 닫는 것이 DB리소스를 효율적으로 사용 할 수 있다. < 사용 예 > “Connection 생략” public void Close(); <결과> www.themegallery.com Company Logo

SqlDataReader Class Get+ 데이터형 메소드 public decimal Get”DataType”(int i); Item속성보다 효율이 높다. 해당하는 열과 데이터형을 알고 있어야한다. public decimal Get”DataType”(int i); < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class Getsql+ 데이터형 메소드 Sql+데이터형이라는 표현을 볼 때 SQL 서버와 밀접한 관련이 있는 메소드 임을 알 수 있다. public decimal GetSql”DataType”(int i); < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class GetDataTypeName 소스 데이터형의 이름을 가져오는 역할을 한다. public string GetDataTypeName(int i); < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class GetFieldType < 사용 예 > “Connection 생략” 개체의 데이터형을 가져오는 메소드. name과 age의 경우 System.String에 해당한다. < 사용 예 > “Connection 생략” public Type GetFieldType(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class GetName < 사용 예 > “Connection 생략” 해당하는 개체의 열 이름을 가져오는 역할을 한다. (Column Name) < 사용 예 > “Connection 생략” public string GetName(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class GetOrdinal < 사용 예 > “Connection 생략” 해당하는 열의 서수를 가져온다. (Column Number) < 사용 예 > “Connection 생략” public int GetOrdinal(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class GetSchemaTable < 사용 예 > “Connection 생략” SqlDataReader의 열 메타 데이터를 설명하는 DataTable을 반환한다. 스키마는 테이블 등의 구조를 의미한다. SqlDataReader가 닫힌 경우에 GetSchemaTable을 호출하게되면 InvalidOperationException 예외가 발생하게 된다. < 사용 예 > “Connection 생략” public DataTable GetSchemaTabe(); <결과> www.themegallery.com Company Logo

SqlDataReader Class GetSqlValue < 사용 예 > “Connection 생략” 내부 SqlDbType중에서 Variant데이터형으로 포현된 오브젝트를 가져온다. GetSqlValue 메소드를 활용하면 My SQL 서버에서 현재 서수에 해당하는 열의 정확한 데이터형을 파악하지 않고도 값의 출력이 가능하다. 이 모든 열의 값을 임의의 형변수 값으로 변환하여 보여주기 때문이다. < 사용 예 > “Connection 생략” public object GetSqlValue(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class GetValue < 사용 예 > “Connection 생략” GetSqlValue와 비슷하다. Get+ 보다 속도면은 효율적이지 못하나 내부적으로 형변환이 일어나는 속도를 줄일수 있어서 GetSqlValue보다 효율적이다. < 사용 예 > “Connection 생략” public string GetValue(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class IsDBNull < 사용 예 > “Connection 생략” 해당하는 열에 Null값이 있으면 True 없으면 False를 반환한다. DB에서 Null은 0과 다르다. < 사용 예 > “Connection 생략” public bool IsDBNULL(int i); <결과> www.themegallery.com Company Logo

SqlDataReader Class NextResult public bool NextResult(); 일괄적으로 Transaction SQL 문의 결과를 읽을때 SqlDataReader를 다음 결과로 이동하는 처리를 수행한다. public bool NextResult(); < 사용 예 > “Connection 생략” <결과> www.themegallery.com Company Logo

SqlDataReader Class Read < 사용 예 > “Connection 생략” MoveNext역할을 포함하고 있다. 읽는 기능과 다음 레코드로 이동하는 역할을 한다. < 사용 예 > “Connection 생략” public bool Read(); <결과> www.themegallery.com Company Logo

따라해 보삼요..