데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교
http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2
DB 에속한테이블보기 show tables; 에러발생 DB 생성및삭제연습 create database test; show tables; drop database test; DB 삭제 실습에서사용할 DB 생성 create database MyDB; use MyDB; show tables; DB 생성 Department of Computer Engineering 3
실습에사용할테이블생성 create table student ( SNO INT PRIMARY KEY, SNAME CHAR(20), MAJOR CHAR(20), GPA REAL); 테이블생성 한글문제해결 set names euckr; 한글입력가능하게해줌 Department of Computer Engineering 4
샘플데이터입력 데이터입력 insert into student values (20091000, ' 홍길동 ', ' 컴퓨터공학과 ', 4.3); select * from student; 확인 insert into student values (20091000, ' 일지매 ', ' 컴퓨터공학과 ', 4.0); 에러발생 (Primary Key 중복 ) insert into student values (20091001, ' 일지매 ', ' 컴퓨터공학과 ', 4.0); select * from student; Department of Computer Engineering 5
삭제예제 데이터삭제 delete from student where sno = 20091001; select * from student; Department of Computer Engineering 6
DB 에속한테이블리스트 show tables; Metadata 검색 테이블의구성을보여줌 ( 두가지방법 ) show columns from student; describe student; student 테이블생성관련정보보여줌 show create table student; Department of Computer Engineering 7
My.ini MySQL 한글설정 [mysqld] character-set-client-handshake=false default-character-set=euckr MySQL alter database MyDB character set euckr collate euckr_korean_ci; 서비스에서다시시작 ODBC 설정 Connect options 탭에서 initial statement 에 set Charset euckr 입력 Department of Computer Engineering 8
ODBC 드라이버설치 http://dev.mysql.com/downloads/ Connector/ODBC 다운로드후설치 Department of Computer Engineering 9
ODBC 추가 제어판 성능및유지관리 - 관리도구 데이터원본 (ODBC) 클릭 Department of Computer Engineering 10
Data Source Name (DSN) 추가 1. 클릭 ( 한글쓰려면 3.51 선택 ) 3. 모두입력 2. 클릭 4. 클릭 5. 확인 Department of Computer Engineering 11
Visual Studio 로새프로젝트생성 MyDBViewer MFC 응용프로그램 클릭 클릭 Department of Computer Engineering 12
응용프로그램마법사세팅 단일문서 (SDI), 유니코드라이브러리사용해제 클릭 해제 Department of Computer Engineering 13
데이터베이스지원 클릭 클릭 클릭 Department of Computer Engineering 14
멤버변수및함수추가 MyDBViewerDoc.h 파일에추가 Department of Computer Engineering 15
리소스뷰탭선택 왼쪽밑에있음 없으면보기메뉴에서선택 메뉴추가 3. MySQL(&M) 입력 2. 여기클릭하고 Insert 누름 1. 더블클릭 Department of Computer Engineering 16
메뉴아이템추가 메뉴아이템 Select(&S) 입력 Connect(&C) 입력 Close(&X) 입력 속성편집 첨부된소스코드참조 Prompt 추가 Department of Computer Engineering 17
이벤트처리기추가 1. 오른쪽버튼 2. 선택 Department of Computer Engineering 18
Document 클래스에서처리 참고 : 첨부된소스코드에서 UPDATE_COM MAND_UI 관련코드확인할것 1. 선택 2. 클릭 Department of Computer Engineering 19
멤버변수초기화 생성자및 OnNewDocument() 에서초기화 MyDBView erdoc.cpp 파일 멤버변수추가하면생성자에서초기화 여기에서도초기화해줄것 Department of Computer Engineering 20
ODBC 접속을위한소스코드입력 MyDBView erdoc.cpp 파일 Department of Computer Engineering 21
void Execute() 함수추가 1. 오른쪽버튼 2. 선택 Department of Computer Engineering 22
함수추가마법사 void Execute() 1. void 로변경 2. 입력 3. 클릭 Department of Computer Engineering 23
함수정의 Select 문실행 Department of Computer Engineering 24
이벤트처리기추가 1. 오른쪽버튼 2. 선택 Department of Computer Engineering 25
Document 클래스에서처리 1. 선택 2. 클릭 Department of Computer Engineering 26
함수정의 화면을다시그림 Department of Computer Engineering 27
OnMysqlClose() 이벤트처리기구현 같은요령으로이벤트처리기구현 Department of Computer Engineering 28
OnDraw() 에코드추가 MyDBViewerView.cpp 파일 Department of Computer Engineering 29
한글깨짐현상해결 만약실행시한글이깨진다면 Department of Computer Engineering 30
한글깨짐현상해결 ( 계속 ) 클릭 클릭 클릭 euckr 선택 Department of Computer Engineering 31
한글깨짐현상해결 ( 계속 ) Department of Computer Engineering 32