|
확 인 |
|
관리 프로그램
목 적 |
MFC를 사용해 만든 간단한 회원 관리 프로그램 | ||||||||||||
개발도구 |
Microsoft Visual Studio 2008 | ||||||||||||
| |||||||||||||
세 부
사 항 |
|
오라클 ODBC 설정하기
1. 시작 -> 설정 -> 관리도구 -> 데이터원본(ODBC)
2. 시스템 DSN 탭 클릭
3. 오른쪽에 있는 추가 버튼
4. Oracle 선택 , 마침
5. Data Source Name에 임의의 이름
6. TNS Service Name에 오라클 설치시 입력한 sid 이름 선택 후 ok버튼
자세한 MFC 오라클 기본 셋팅 좌표
http://blog.naver.com/changrok0979/100088826657
선언된멤버와 레코드셋 멤버의 동기화
void COdbcDemoView::DisplayRecord(void) { m_ID=m_pSet->m_ID; m_PW=m_pSet->m_PW; m_NAME=m_pSet->m_NAME;
UpdateData(false); } |
회원추가
void C OdbcDemoView::OnBnClickedButton1() { // TODO: 여기에컨트롤알림처리기코드를추가합니다. if(!UpdateData()) return;
m_pSet->MoveLast(); m_pSet->AddNew(); m_pSet->SetFieldNull(NULL);
m_pSet->m_ID =m_ID; m_pSet->m_PW=m_PW; m_pSet->m_NAME=m_NAME;
m_pSet->Update(); m_pSet->Requery();
if(m_List.GetItemCount()>0) m_List.DeleteAllItems(); ListupAllRecords();
}
AddNew()메소드는 새로운 빈 레코드를 테이블에 추가해 주는 역할 이 함수를 호출 시 m_pSet이 가리키는 레코드는 빈 레코드가 되고, SetFieldNull() 메소드를 호출해서 빈 레코드를 NULL로 초기화 해준다. 필드에 값을 설정하고, Update()메소드를 통해서 새로 추가한 레코드가 실제 데이터베이스에 적용 되도록 한다.
----select * from 테이블명---- 위 쿼리문은 임의로 수정할 수 없고 이후로 이어지는 where 절과 order by 절은 각각 m_strFilter 과 m_strSort멤버로 CRecordset 클래스에 포함되 있다. 또한 테이블 생성 시 primary key 로 Id를 지정해 놓아서 동일한 아이디 값이 들어갔을 시 오류 발생하도록 하였다.
|
회원삭제
void COdbcDemoView::OnBnClickedButton2() { // TODO: 여기에컨트롤알림처리기코드를추가합니다.
if(!UpdateData()) return;
m_pSet->m_strFilter.Format(_T("ID = '%s'"),m_ID);
m_pSet->Requery();
m_pSet->Delete();
m_pSet->m_strFilter.Empty();
m_pSet->Requery();
m_pSet->MoveFirst();
::AfxMessageBox(L"정상적으로탈퇴되었습니다.");
if(m_List.GetItemCount()>0) m_List.DeleteAllItems(); ListupAllRecords();
}
Delete() 메소드는 선택한 레코드를 테이블에서 삭제해 준다.
|
새로고침
void COdbcDemoView::OnBnClickedButton3() { // TODO: 여기에컨트롤알림처리기코드를추가합니다.
if(!UpdateData()) return;
m_pSet->Edit();
m_pSet->Update(); m_pSet->Requery();
if(m_List.GetItemCount()>0) m_List.DeleteAllItems();
ListupAllRecords(); }
레코드 업데이트는 레코드 추가 와 코드가 비슷하다. 단지 새로 추가한 레코드에 적용할 것인지 아니면 선택한 레코드에 적용할 것인지의 차이만 있다.
|
|