CDaoQueryDef

CDaoQueryDef 개체는 쿼리 정의 또는 "querydef," 일반적으로 하나의 데이터베이스에 저장 된 나타냅니다. Querydef가 쿼리 및 "만든 날짜" 및 "ODBC 시간 초과 합니다."와 같은 해당 속성을 설명 하는 SQL 문을 포함 하는 데이터 액세스 개체 그들을 저장 하지 않고 임시 querydef 개체를 만들 수도 있지만 그것은 편리 하 게-그리고 훨씬 더 효율적인 ? 일반적으로 저장 하는 데이터베이스에 쿼리 재사용. CDaoDatabase 개체 저장된 querydefs 들어 있는 QueryDefs 컬렉션을 라는 컬렉션을 유지。

메모nbsp;??DAO 데이터베이스 클래스는 MFC 데이터베이스 클래스 Open Database Connectivity (ODBC)에 따라 다릅니다. 모든 DAO 데이터베이스 클래스 이름은 "CDao" 접두사가 있습니다. 여전히 DAO 클래스와 함께 ODBC 데이터 원본에 액세스할 수 있습니다. 일반적으로, DAO 기반 MFC 클래스는 ODBC;에 따라 MFC 클래스 보다 더 많은 능력이 DAO 기반 클래스를 포함 한 자신의 데이터베이스 엔진을 통해 ODBC 드라이버를 통해 데이터를 액세스할 수 있습니다. DAO 기반 클래스를 또한 DAO를 직접 호출 하지 않고 클래스를 통해 테이블을 추가 하는 등의 DDL (데이터 정의 언어) 작업을 지원(&N)。

사용 현황

사용 하 여 querydef 개체 중 기존 저장 된 쿼리를 사용 하거나 만들 새 쿼리 또는 임시 쿼리 저장:

  1. 모든 경우에, 먼저 쿼리가 속한 CDaoDatabase 개체에 대 한 포인터를 제공 하는 CDaoQueryDef 개체 구성。

  2. 다음 무엇을 원하는에 따라 다음을 수행:
    • 기존 저장 된 쿼리를 사용 하려면 querydef 개체의 Open 멤버 함수, 저장 된 쿼리의 이름을 제공。

    • 새 저장 된 쿼리를 만들려면 쿼리 이름을 제공 querydef 개체의 Create 멤버 함수 호출. 다음 데이터베이스의 QueryDefs 컬렉션에 추가 하 여 쿼리를 저장 하려면 Append 를 호출 합니다. 그래서 만들기 를 호출한 후 호출 하지 않으면 만들기 오픈 상태로 querydef를 둔다。

    • 임시 querydef를 만들려면 Create를 호출 합니다. 쿼리 이름에 대해 빈 문자열을 전달 합니다. Append 를 호출 하지 마십시오。

Querydef 개체를 사용 하 여 마치면 Close 멤버 함수; 호출 querydef 개체를 파괴。

nbsp;??저장 된 쿼리를 만드는 가장 쉬운 방법은 그들을 만들고 Microsoft Access를 사용 하 여 데이터베이스에 저장 하는 것입니다. 열 하 고 MFC 코드에서 사용할 수 있는 다음(&N)。

목적

Querydef 개체를 사용 하 여 다음과 같은 목적에 대 한:

Querydef 개체를 사용 하 여 쿼리를 선택, 액션, 크로스탭, 삭제, 업데이트 등의 모든 종류에 대 한 하 고, 추가, 테이블 만들기, 데이터 정의 SQL 통과, 연합 하 고, 대량 쿼리 수 있습니다. 쿼리 형식은 SQL 문 제공 하는 내용으로 결정 됩니다. 쿼리 형식에 대 한 자세한 실행GetType 멤버 함수를 참조 하십시오. 레코드는 일반적으로 행을 반환 하는 것에 대 한 사용 쿼리, 일반적으로 그 선택을 사용 하 여... 키워드. Execute 는 대량 작업에 대해 가장 일반적으로 사용 됩니다. 자세한 내용은 실행CDaoRecordset 를 참조 하십시오.

Querydefs 및 레코드 집합

CDaoRecordset 개체를 만드는 querydef 개체를 사용 하 여 일반적으로 만들거나 열면 querydef 위에서 설명한 대로. 그런 다음 CDaoRecordset::Open를 호출 하는 경우 querydef 개체에 대 한 포인터를 전달 하는 recordset 개체를 생성 합니다. 전달 하면 querydef 오픈 상태에 있어야 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. CDaoRecordset 클래스。

Querydef를 사용 하 여 열린 상태의 않으면 recordset (querydef에 대 한 가장 일반적인 사용)를 만들 수 없습니다. 열기 또는 만들기 를 호출 하 여 열린 상태로 querydef를 넣어。

외부 데이터베이스

Querydef 개체는 외부 데이터베이스 엔진의 기본 SQL 언어를 사용 하는 것이 좋습니다. 예를 들어, (Microsoft SQL Server에서 사용 하는)로 Transact SQL 쿼리를 만들고 querydef 개체에 저장할 수 있습니다. Microsoft Jet 데이터베이스 엔진에 기반 하지 SQL 쿼리를 사용 해야 하는 경우 외부 데이터 원본을 가리키는 연결 문자열을 제공 해야 합니다. 유효한 쿼리 문자열이 무시 데이터베이스 엔진에 연결 하 고 외부 데이터베이스 서버에 직접 전달 되어 처리。

nbsp;??ODBC 테이블을 사용 하는 것이 좋습니다 Microsoft Jet에 첨부할 것 (.MDB) 데이터베이스입니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 문서 DAO 외부: 외부 데이터 원본 작업 Visual c + + 프로그래머 가이드(&N)。

Querydefs에 대 한 자세한 내용은 다음 웹 사이트를 참조 하십시오. 문서 DAO Querydef Visual c + + 프로그래머 가이드에서. 관련된 정보에 대 한 "QueryDef 개체", "QueryDefs 컬렉션" 및 "액세스 외부 데이터베이스와 DAO" DAO 도움말 항목을 참조 하십시오.

# include lt;afxdao.h>

클래스 멤버 |nbsp; 기본 클래스 (ko) | 계층 구조 차트(&N)

샘플nbsp; MFC 샘플 DAOVIEW (ko) | MFC 샘플 DAOTABLE(&N)

참고 항목nbsp;CDaoRecordset, CDaoDatabase, CDaoTableDef, CDaoException(&N)

Index