mfc sql 예제

및 예제는 레코드 집합: 조인(ODBC)수행을 참조하십시오. CDaoDatabase 클래스에는 Microsoft Jet 데이터베이스 엔진과 관련된 기능을 사용할 수 있는 몇 가지 기능이 포함되어 있습니다. 예를 들어 CDaoTableDef 개체의 컬렉션을 CDaoDatabase 개체와 연결할 수 있습니다. Jet 호환 데이터베이스 파일 내에서 테이블을 만들고 수정하는 데 사용할 수 있는 테이블 정의 개체입니다. 다음 예제는 MFC 데이터베이스 응용 프로그램에서 레코드를 선택 하는 SQL 문을 생성 합니다. 프레임워크가 GetDefaultSQL 멤버 함수를 호출하면 함수는 테이블 의 이름 인 SECTION을 반환합니다. CDatabase::Open() 및 CRecordset::Open() 함수는 오류가 발생할 경우 CDBException을 throw합니다. CDaoDatabase::Open() 및 CDaoRecordset::Open() 함수는 CDaoException을 throw합니다. 데이터베이스 예외를 처리하는 방법의 예는 이 단원의 후반부에서 다 수 있습니다. 데이터베이스, 레코드 집합 및 레코드 보기 클래스가 함께 작동하는 방식을 더 잘 이해하려면 AppWizard를 사용하여 데이터베이스 응용 프로그램을 만듭니다.

단원 1의 ODBC 데이터 원본을 사용하여 SQL Server 샘플 데이터베이스 pubs에서 데이터를 검색하고 업데이트하는 양식 기반 응용 프로그램을 만듭니다. ODBC 클래스는 다음 예제 에서 사용되지만 보여 지는 기술은 DAO 클래스를 기반으로 하는 프로젝트에 쉽게 적용할 수 있습니다. 레코드 집합 개체를 만든 후에는 Open() 멤버 함수를 호출하여 쿼리를 제출하고 쿼리에서 반환된 레코드로 레코드 집합을 채웁니다. 다음 코드는 이전 예제에서 만든 CRecordset 개체에 대해 Open() 함수를 호출하는 방법을 보여 주며, 공백을 포함하거나 포함할 수 있는 열 이름을 지정하는 경우 이름을 대괄호로 둘러싸야 합니다. 예를 들어 이름 “이름”은 “[이름]”이어야 합니다. 기본적으로 이 재정의는 마법사로 지정한 테이블 이름을 반환합니다. 예제에서 테이블 이름은 “AUTHORS”입니다. 나중에 레코드 집합의 Open 멤버 함수를 호출할 때 Open은 양식의 최종 SELECT 문을 생성합니다. ODBC 클래스를 사용하는 다음 예제와 같이 기존 데이터베이스 개체의 주소를 레코드 집합 생성자로 전달해야 합니다. DoFieldExchange에서 호출합니다.

예를 들어 Visual C++에서 SQL Server에 연결하고 간단한 쿼리를 실행하는 방법에 대한 간단한 예제입니다. DBMS에 따라 외부 조인과 같은 작업에 대한 특별한 구문 요구 사항이 발생할 수도 있습니다. ODBC 함수를 사용하여 DBMS에 대한 드라이버에서 이 정보를 가져옵니다. 예를 들어 SQL_VARCHAR와 같은 특정 데이터 형식에 대해 ::SQLGetTypeInfo를 호출하여 LITERAL_PREFIX 및 LITERAL_SUFFIX 문자를 요청합니다. 데이터베이스 독립적 코드를 작성하는 경우 자세한 구문 정보는 ODBC 프로그래머의 참조에서 부록 C: SQL 문법을 참조하십시오. 이 문서를 작성하는 이유는 데이터베이스 응용 프로그램에 어떻게 든 중복 코드가 있으며 문제가 발생할 수 있기 때문입니다. 예를 들어 ADO 라이브러리는 데이터베이스를 호출해야 할 때 사용합니다. 일반적으로 데이터베이스에서 데이터가 필요할 때 매번 연결을 열고 RecordSet 개체에서 데이터를 매번 얻는 것이 우리의 관행입니다…