25 most popular ado
다가오는 인터뷰를 준비하는 데 도움이되는 가장 인기있는 ADO.NET 인터뷰 질문 및 답변 :
인터뷰를 준비 중이라면 가장 자주 묻는 Ado.net 인터뷰 질문과 답변이 많은 도움이 될 것입니다.
기술 인터뷰에서 접할 수있는 질문을 소개하기 위해 동일한 방법을 설계했습니다. 이 튜토리얼이 인터뷰 준비 과정에서 큰 도움이되기를 바랍니다.
그들을보세요!
ADO.NET 정보
ADO.net은 데이터베이스 기술이며 .NET 프레임 워크 아키텍처의 일부입니다. ADO.net은 Visual Basic.NET, VisualC ++ 등과 같은 모든 .NET 프레임 워크 호환 프로그래밍 언어에서 사용할 수 있습니다. 데이터 소스와 완전히 독립적으로 데이터 액세스 및 조작이 수행되는 연결되지 않은 아키텍처를 지원합니다.
자주 묻는 ADO.NET 인터뷰 질문 목록
의 시작하자 !!!
Q # 1) ADO.NET이란 무엇입니까?
대답: ADO.net은 Microsoft ActiveX 데이터 개체를 의미합니다. . Ado.net은 데이터베이스 및 XML 파일과 같은 데이터 소스와 상호 작용하는 데 사용할 수있는 클래스 집합처럼 생각할 수있는 데이터베이스 기술입니다.
Asp.net 응용 프로그램, Windows 응용 프로그램, 콘솔 응용 프로그램은 ADO.NET을 사용하여 데이터베이스에 연결하여 명령을 실행하고 데이터를 검색하는 몇 가지 유형의 .net 응용 프로그램입니다.
Q # 2) ADO.NET의 주요 기능은 무엇입니까?
대답:
- 연결이 끊긴 데이터 아키텍처.
- DataSet에 캐시 된 데이터입니다.
- 확장 성
- XML 형식의 데이터 전송.
- 강력한 형식의 언어.
Q # 3) ADO.NET 응용 프로그램을 닫는 것이 중요한 이유는 무엇입니까?
대답 : 응용 프로그램의 확장 성과 안정성에 영향을 미치므로 연결을 제대로 닫아야합니다.
열린 연결은 항상 공격에 취약하므로 간단히 말해서 '가능한 한 늦게 연결을 열고 가능한 한 빨리 닫으십시오'. '최종'블록 또는 USING 문을 '사용'하여 연결을 '닫을'수 있습니다.
Q # 4) C #에서 'using'문을 사용하는 두 가지 용도는 무엇입니까?
대답 : 용도는 다음과 같습니다.
(나는) 네임 스페이스를 가져 오려면.
예를 들어 :시스템 사용;
(ii) 연결을 올바르게 종료하려면 아래 그림을 참조하십시오. 연결은 '사용'블록이 끝나면 자동으로 닫힙니다.
질문 # 5) Ado.net 클래스를 사용하여 Microsoft Access 데이터베이스에 연결하는 .NET 응용 프로그램의 예를 제공합니다.
대답 : 예 아래에서는 Microsoft Access 데이터베이스에 대한 연결을 설정하는 방법 만 설명하고 데이터베이스에 대한 실행 명령에 대해서는 설명하지 않습니다.
아래 그림을 참조하십시오 :
데이터베이스에 대한 연결을 설정하고 데이터베이스에서 값을 검색하려면 아래 단계를 수행해야합니다.
- 참조 라이브러리 클래스를 가져옵니다. 예: System.Data.OleDB를 사용합니다.
- 연결 개체를 만듭니다.
- 연결 문자열을 지정하면 데이터베이스 속성에서 복사 할 수 있습니다.
- 연결 개체 생성자를 사용하고 '연결 문자열'을 인수로 지정합니다.
- Connection 인스턴스를 엽니 다 (try-catch 문에서 여는 것이 좋습니다).
Q # 6) 연결 풀링이란 무엇입니까?
대답 : 데이터 제공 업체는 '연결 풀링'서비스를 구현합니다. '연결 풀링'은 성능을 향상시킵니다. 연결 풀링은 연결 집합을 만듭니다.
가짜 이메일을 만드는 방법
데이터베이스와의 연결을 설정할 때 풀에서 연결이 제공됩니다. 데이터베이스에서 연결을 끊으면 연결이 풀로 돌아가고 연결을 원하는 다음 신청자가 해당 연결을 사용합니다.
'연결 풀링'을 사용하면 연결의 '열기'및 '닫기'가 더 이상 값 비싼 작업이되지 않습니다.
아래 그림을 참조하십시오 :
Q # 7) 데이터 셋이란 무엇입니까?
대답 : 데이터 셋은 클라이언트 PC에 채워지는 데이터의 연결이 끊어진 복사본입니다. 여기에는 Datatables 및 Datarelations가 포함됩니다. 일반적으로 DataAdapter는 데이터 세트를 데이터로 채우는 데 필요합니다.
연결이 끊어 졌으므로 사용자는 더 이상 매번 데이터베이스에 연결할 필요가 없으며 데이터 소스와 상호 작용하지 않고 데이터 조작이 수행됩니다. 로컬 시스템에 상주하므로 매우 빠르고 안정적입니다.
데이터 세트의 두 개체
- DataTableCollection
- DataRelationCollection
두 가지 유형의 데이터 세트
- 형식화 된 데이터 세트
- 유형이 지정되지 않은 데이터 세트
Q # 8) 데이터 세트를 채울 수있는 다른 방법은 무엇입니까?
답변 : 아래에 언급 된 다른 접근 방식을 사용하여 데이터 세트를 채울 수 있습니다.
- DataAdapter 개체 및 '채우기'메서드 사용.
- 프로그래밍 방식으로 Datatable, Datarow 및 Data 열 개체를 만듭니다.
- XML 문서의 데이터.
- 다른 데이터 세트와 병합.
Q # 9) DataAdapter 란 무엇입니까?
대답 : DataAdapter는 데이터베이스와 연결 개체를 연결하는 데 도움이됩니다. DataAdapter는 데이터 세트와 데이터 소스 간의 통신을 제공합니다.
데이터는 DataAdapter를 통해 데이터 세트의 '안팎으로'이동합니다.
사용자가 데이터베이스를 제어 할 수있는 DataAdapter의 속성은 다음과 같습니다.
- 명령 선택
- 업데이트 명령
- 명령 삽입
- 명령 삭제
Q # 10) DataReader 란 무엇입니까?
대답 : DataReader 개체는 데이터베이스에서 연결 기반 데이터 액세스를 제공하는 '스트림 기반', '읽기 전용'및 '전달 전용'입니다. 여기에는 데이터 소스에 저장된 데이터를 검색하는 'Read ()'메서드가 포함되어 있습니다.
연결 개체에는 한 번에 하나의 DataReader 만 있습니다. ‘Read ()’메서드는 한 번에 한 행만 검색합니다. 즉, 데이터를 처리하기 전에 응용 프로그램에서 완전히 읽을 필요는 없습니다.
아래 그림을 참조하십시오 :
Q # 11) 다른 DataProviders에서 사용되는 DataReader의 예를 몇 가지 제공하십시오.
대답 : 각 DataProvider에는 DataReader 클래스가 있습니다.
아래 표에는 몇 가지가 나와 있습니다.
DataProvider | DataReader |
---|---|
OleDb | OleDbDataReade |
SQL | SqlDataReader |
ODBC | ODBCDataReader |
Q # 12) 데이터 바인딩이란?
대답 : 데이터 바인딩은 데이터를 그래픽 요소 (윈도우 형식의 컨트롤)와 바인딩하는 프로세스입니다. 창 양식에서 데이터를 바인딩 한 후 Binding Navigator Control을 사용하여 레코드를 탐색 할 수 있습니다.
데이터 바인딩의 장점 중 하나는 연결을 설정하고 데이터 세트를 만들기 위해 사용자가 코드를 명시 적으로 작성할 필요가 없다는 것입니다.이 기능은 사용자에게 필요한 ADO.NET 코드를 작성합니다.
Q # 13) 데이터 바인딩의 유형은 무엇입니까?
대답 :이 분류는 윈도우 폼의 컨트롤을 통해 표시 할 수있는 바운드 값의 수를 기반으로합니다.
두 가지 유형의 데이터 바인딩 :
단위 테스트와 통합 테스트의 차이점
- 단순 데이터 바인딩 : 컨트롤을 단일 데이터 요소에 바인딩하는 프로세스입니다.
예를 들어, 단일 값으로 텍스트 상자 또는 레이블 바인딩.
- 복잡한 데이터 바인딩 : 하나의 데이터 요소 또는 여러 데이터 요소를 표시하기 위해 구성 요소를 바인딩하는 프로세스입니다.
예를 들어, GridView 또는 Listbox 컨트롤은 테이블에서 하나의 데이터 요소 또는 둘 이상의 레코드를 바인딩합니다.
Q # 14) DataProviders 란 무엇입니까?
대답 : DataProviders는 데이터베이스 연결, 데이터 저장 데이터 검색, 데이터 업데이트 등에 사용됩니다.
DataProviders의 예 : SQL, OleDb, ODBC
DataProvider의 네 가지 구성 요소는 다음과 같습니다.
- 연결
- 명령어
- DataReader
- DataAdapter
아래 그림을 참조하십시오 :
Q # 15) ADO.NET 개체 모델을 자세히 설명하십시오.
대답 : ADO.net은 개체 모델을 기반으로합니다. 데이터 소스의 데이터는 데이터 공급자를 사용하여 검색됩니다. 데이터 공급자에는 연결, DataAdapter, DataReader 및 명령과 같은 구성 요소가 포함됩니다. 응용 프로그램에 데이터를 제공하고 응용 프로그램의 변경 사항으로 데이터베이스를 업데이트합니다.
응용 프로그램은 데이터 집합 또는 DataReader 개체를 통해 데이터에 액세스 할 수 있습니다.
ADO.net은 또한 데이터 세트의 XML 표현을 만들 수 있습니다. 데이터 세트의 XML 표현에서 데이터는 XML 형식으로 작성됩니다.
아래 그림을 참조하십시오 :
Q # 16) SqlConnection 클래스의 주요 이벤트는 무엇입니까?
대답 : SqlConnection의 두 가지 주요 이벤트는 다음과 같습니다.
- StateChange 이벤트 : 이 이벤트는 Connection 상태가 변경 될 때 발생했습니다. 이벤트 핸들러는 특정 이벤트와 관련된 데이터를 포함하는 인수 (Datatype : StateChangeEventArgs)를받습니다.
- InfoMessage 이벤트 : 이 이벤트는 데이터 소스에서 정보 메시지 또는 경고가 반환 될 때 발생했습니다. 이벤트 처리기는 특정 이벤트와 관련된 데이터를 포함하는 인수 (데이터 유형 : SqlInfoMessageEventArgs)를받습니다.
Q # 17) 데이터 필터링이란 무엇을 의미합니까?
대답 : 데이터 필터링은 선택적 레코드 만 표시해야 할 때 수행됩니다.
다음은 데이터를 필터링하는 두 가지 방법입니다.
- 매개 변수화 된 쿼리 생성.
- 창 양식의 제어를 사용하여 데이터 필터링.
Q # 18) 연결된 환경과 연결이 끊긴 환경의 차이점은 무엇입니까?
대답 : 연결 환경과 연결 해제 환경의 차이점은 아래 표에 나와 있습니다.
연결된 환경 | 연결이 끊긴 환경 |
---|---|
애플리케이션과 데이터베이스간에 데이터를 전송하려면 지속적인 연결이 필요합니다. | 애플리케이션과 데이터베이스간에 데이터를 전송하기 위해 지속적인 연결이 필요하지 않습니다. |
데이터 동시성은 제어하기 쉽습니다. | 데이터 동시성은 제어하기 쉽지 않습니다. |
사용자가 항상 데이터베이스에 연결되어 있으므로 데이터가 최신 상태입니다. | 사용자가 항상 데이터베이스에 연결되어 있으므로 데이터가 최신 상태가 아닙니다. |
클라이언트 응용 프로그램의 확장 성 및 성능 문제가 있습니다. | 클라이언트 애플리케이션의 확장 성과 성능을 향상시킵니다. |
네트워크 트래픽 로깅으로 연결 | 네트워크 트래픽 로깅 문제 감소 |
Q # 19) Command Object를 사용하여 비동기 연산을 수행한다는 것은 무엇을 의미합니까?
대답 : 때때로 데이터베이스의 명령 실행은 서로 연결되어 있으므로 완료하는 데 많은 시간이 소요될 수 있습니다.
Windows 용 무료 버전 관리 소프트웨어
이러한 상황에 대한 솔루션은 명령 실행이 완료 될 때까지 기다리지 않고 데이터베이스에 대해 비동기 적으로 명령을 실행했습니다. 이는 장기 실행 기본 명령을 실행하려는 상황에서 유용 할 수 있습니다.
비동기 실행의 장점 :
- 성능을 향상시킵니다.
- 클라이언트 응용 프로그램의 응답 성을 향상시킵니다.
Q # 20) '일괄 업데이트'란 무엇을 의미합니까?
대답 : 일괄 업데이트는 함께 그룹화 된 업데이트의 일괄 처리로 정의 할 수 있습니다. 데이터베이스에서 데이터 업데이트의 성능을 향상시키는 것은 변경 사항을 하나씩 업데이트하는 것이 아니라 데이터베이스에 일괄 적으로 업데이트하고 보내는 것입니다.
일괄 업데이트의 장점 :
- 데이터가 일괄 적으로 전송되므로 네트워크 트래픽이 적습니다.
- 데이터베이스는 일부 업데이트를 병렬로 실행할 수 있습니다.
Q # 21) Typed와 Untyped Dataset의 차이점은 무엇인가요?
대답 : 차이점은 다음과 같습니다.
입력 된 데이터 세트 : 유형이 지정된 데이터 세트는 Dataset 클래스에서 파생되며 데이터 세트 생성시 생성되는 연관된 XML 스키마가 있습니다.
XML 스키마에는 테이블, 열 및 행과 같은 데이터 세트 구조에 대한 정보가 포함됩니다. 데이터는 데이터베이스에서 데이터 세트로, 데이터 세트에서 XML 형식의 다른 구성 요소로 전송됩니다.
유형이 지정되지 않은 데이터 세트 : 유형이 지정되지 않은 데이터 세트에는 연결된 XML 스키마가 없습니다. 유형이 지정되지 않은 데이터 세트, 테이블 및 열은 컬렉션으로 표시됩니다.
Q # 22) 연결 풀링을 구현하기위한 규칙은 무엇입니까?
대답 : 연결 풀링을 설정하려면 다음 규칙을 따라야합니다.
- 연결 문자열은 모든 사용자에 대해 동일해야합니다.
- UserID는 모든 사용자에 대해 동일해야합니다.
Q # 23) 데이터 테이블이란?
대답 : Datatable은 행, 열 및 제약 조건의 모음입니다. Datatable은 연결이 끊긴 데이터 액세스를 수행 할 수 있습니다.
Q # 24) DataView 란 무엇입니까?
대답 : DataView 컨트롤은 Datatable에 저장된 데이터의 사용자 지정보기를 만듭니다. DataView의 변경 사항은 Datatable에 영향을줍니다. 기본적으로 모든 테이블에는 데이터보기가 연결되어 있습니다.
그런 다음 DataView 컨트롤을 추가하고 Windows 양식에 바인딩 할 수 있습니다. 사용자는 데이터를 필터링, 탐색 및 정렬 할 수 있습니다.
Q # 25) 데이터베이스에서 데이터에 액세스하는 데있어 주요 과제는 무엇입니까?
대답 : 과제는 다음과 같습니다.
- 둘 이상의 사용자가 하나의 데이터베이스에서 동시에 데이터에 액세스해야 할 수 있습니다.
- 둘 이상의 사용자가 언제 어디서나 데이터에 액세스해야 할 수 있습니다.
이 문제에 대한 해결책은 ‘데이터베이스 잠금’ 트랜잭션 실행 시간 동안.
Q # 26) 데이터베이스에서 '트랜잭션'은 무엇을 의미하며 '트랜잭션 속성'은 무엇입니까?
대답 : 트랜잭션은 일련의 작업으로 정의 할 수 있습니다. 트랜잭션이 성공하면 데이터베이스에서 수행 된 모든 데이터 수정 사항이 커밋되고 저장됩니다.
거래의 속성
- 원 자성
- 일관성
- 격리
- 내구성
a) 원 자성 : 계좌 'AB'에서 Rs 1000 /-가 인출되는 은행 거래를 생각해보십시오.
시스템 오류가 발생하면 금액이 계정 'AB'자체로 롤백됩니다. 이 속성을 '원자'라고합니다. 이 속성은 데이터에 대한 모든 변경이 수행되거나 수행되지 않음을 나타냅니다.
즉, 트랜잭션이 성공적으로 완료되거나 트랜잭션이 전혀 시작되지 않아야합니다.
b) 일관성 :예를 들어 , 500 루피 /-금액이 계정 'A'에서 계정 'B'로 이체되는 은행 거래를 고려하십시오. 시스템 오류가 발생하고 Rs 500 /-가 계정 'A'에서 감소하고 동시에 Rs 500 /-가 계정 'B'에 적립되지 않습니다. 이러한 시스템은 '일관되지 않음'.
'일관성'은 트랜잭션이 성공적으로 완료된 후 시스템의 데이터가 일관된 상태에 있어야하므로 동일한 무결성을 유지해야 함을 나타냅니다.
위의 예에 따라 거래가 롤백되어 계정 'A'에 500 루피 /-를 추가하여 시스템 일관성을 유지합니다.
c) 격리 : 계정 'A'가 500 루피 /-를 계정 'B'와 계정 'C'로 동시에 이체하는 은행 거래 프로세스를 고려하십시오. 총 잔액이 Rs 1500 /-인 계정‘A’ '비 분리 시스템'의 경우 두 거래 모두 계정 'A'의 잔액을 Rs 500 /-대신 Rs 1000 /로 읽습니다. 이는 올바르지 않습니다.
'격리'는 한 트랜잭션에 의해 만들어진 시스템의 데이터 변경이 다른 트랜잭션에 의해 만들어진 변경과 격리되어야 함을 의미합니다.
'격리 된 시스템'의 경우 첫 번째 트랜잭션은 Rs 1000 /-의 잔액을 읽고 두 번째 트랜잭션은 계정 'A'에 대해 Rs 500 /-의 잔액을 읽습니다.
d) 내구성 : 여기서는 성공적인 트랜잭션으로 인한 데이터 변경이 영구적임을 나타냅니다. 복구 관리 시스템은 시스템의 내구성을 유지하는 역할을합니다.
Q # 27) ADO.net에서 지원하는 두 가지 유형의 트랜잭션은 무엇입니까?
대답 :
ADO.net에서 지원하는 두 가지 유형의 트랜잭션
- 현지 거래 : 로컬 트랜잭션은 단일 데이터 소스를 기반으로합니다. 데이터베이스에서 직접 처리합니다. 예를 들어, Sqlserver를 사용하여 데이터 트랜잭션을 수행해야하는 경우 'System.Data.SQL 클라이언트'네임 스페이스를 가져옵니다. 마찬가지로 Oracle 데이터베이스를 사용하는 경우 'System.Data.Oracle 클라이언트'네임 스페이스를 가져옵니다.
- 분산 트랜잭션 : 사용자가 SQL Server, Oracle 등과 같은 여러 데이터 서버에서 트랜잭션을 수행해야하는 경우 분산 트랜잭션을 사용할 수 있습니다.
Q # 28) DataReader와 DataSet의 차이점은 무엇입니까?
대답 : 차이점은 다음과 같습니다.
DataReader | 데이터 세트 |
---|---|
성능이 더 좋습니다 | 낮은 성능 제공 |
데이터를 수정할 수 없습니다. | 데이터를 수정할 수 있습니다. |
연결된 아키텍처를 지원합니다. | 연결이 끊긴 아키텍처를 지원합니다. |
읽기 전용 액세스 권한이 있습니다. | 읽기 / 쓰기 권한이 있습니다. |
데이터에 더 빠르게 액세스 할 수 있습니다. | 데이터에 대한 액세스 속도가 느립니다. |
수동으로 코딩해야합니다. | Visual Studio에는이를 지원하는 도구 세트가 있습니다. |
결론
'ADO.net.Practice'에서 가장 자주 묻는 인터뷰 질문에이 튜토리얼이 도움이 되었기를 바랍니다. 이러한 질문에 대해 확실하다면 ADO.net 인터뷰를 쉽게 통과 할 수 있습니다.
인터뷰에 행운을 빕니다 !!!