C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[60842] Re:C++빌더 2009는 MySQL 5.1을 지원하지 않습니다
박지훈.임프 [cbuilder] 2035 읽음    2010-04-20 22:38
방금 지원 요청하신 메일에도 답변 메일을 보냈습니다만...
다른 분들도 참고하실수 있도록 포럼에도 같은 내용으로 답변을 달아봅니다.

결론부터 말해서, C++빌더 2009는 MySQL 5.1 버전을 지원하지 않습니다.
그리고 MySQL 5.1 버전은 델파이 2010 버전에서부터 지원됩니다.

MySQL 5.1 버전은 2008년 4월에 발표되었고, C++빌더 2009는 9월초에 발표되었는데요.
MySQL 5.1이 발표되던 4월 당시에는 이미 델파이 2009에서 지원할 스펙이 확정된 상태에서 내부 베타 테스트를 하고 있었습니다. 따라서 4월에 발표된 MySQL 5.1 버전에 대한 지원을 추가할 수가 없었죠.

0.1 버전 차이인데 지원되고 안되느냐..라고 하실 수도 있겠습니다만, 버전 넘버상으로는 작은 차이라도 그 안에 큰 변경을 넣었는지 아닌지는 MySQL의 벤더에서 결정하는 문제입니다. 그로 인해 MySQL 5.0용 드라이버가 MySQL 5.1을 지원하지 않게 된 것도 MySQL의 벤더 측에서 하위 호환성에 그리 신경을 쓰지 않았기 때문이구요.

반대의 예를 들자면, MS SQL이나 오라클의 경우, 하위버전 드라이버를 사용해서 신버전에 접속하더라도 하위버전의 기능만 사용하는 경우라면 별 문제없이 동작합니다만, 그것은 해당 DB 벤더에서 새로운 버전을 개발할 때 하위 호환성에 신경을 썼기 때문입니다. 거꾸로 말해서, 예전 버전의 드라이버로 신버전에 접속했을 때 문제가 생긴다면 해당 DB 벤더의 책임에 속합니다.



땅주인 님이 쓰신 글 :
: EDN에 Compability관련 문제가 있다고 해서..
: MySQL V5.0.xx 버젼으로 테스트 해보니 되네요.
: dbxmys.dll과 벤더에서 제공하는 libmysql.dll이 V5.1.xx 에서는 궁합이 아직 맞질 않나 봅니다.
: 걍.. 삽질에 목슴 거느니 V5.0.xx로 내리는 게 무병장수에 도움이 될 것 같아 걍 DB 버젼을 내립니다.
:
:
: 땅주인 님이 쓰신 글 :
: : [사용환경]
: : MySQL V5.1.45
: : C++Builder 2009 Enterprise
: :
: : dbExpress를 통해 MySQL DB을 연결하려 하는데..
: : TSQLConnection 객체에 각 연결 설정 정보를 설정 해 주고 Connection = true해주면 잘 붙습니다.
: : TSQLQuery 객체에 쿼리 문장 주고 Active = true해주면 아래와 같은 에러가 발생합니다.
: : (디자인 타입과 런타임 공통으로 나타납니다.)
: :
: : Access violation at address 015BE89C in module 'dbxmys.dll' Read of address 000000000'
: :
: : 런타입 중의 코드에서는 아래와 같습니다.
: :
: :     WideString sSQL = "SELECT * FROM xTEST WHERE PK1 = 1";
: :
: :     SQLQuery->SQLConnection = SQLConnection;
: :
: :     SQLQuery->Active = false;
: :     SQLQuery->SQL->Clear();
: :     SQLQuery->SQL->Text = sSQL;
: :     SQLQuery->Active = true;        // <= 이 곳에서 Access violation 발생..
: :
: : TSQLQuery 의 Connetion 객체에 TSQLConnetion 연결해주는 등의 제반 설정은 다 해주었구요..
: :
: : LibraryName: dbxmys.dll
: : VendorLib: libmysql.dll
: :
: : 파일도 모두 존재하는 것을 확인했습니다.
: : EDN에는 dbExpress와 MySQL로 검색해 보니 compability에 문제가 있다는 게시물은 있는데..
: : 어떻게 해결했다는 얘기는 없네요.. ㅠ.ㅠ;;;;
: :
: : 해결하신 분 도움 주시면.. 감사하겠습니다.

+ -

관련 글 리스트
60836 [질문] dbExpress로 MySQL 연결하기.. 땅주인 2389 2010/04/20
60839     자답..Re:[질문] dbExpress로 MySQL 연결하기.. 땅주인 2460 2010/04/20
60842         Re:C++빌더 2009는 MySQL 5.1을 지원하지 않습니다 박지훈.임프 2035 2010/04/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.