MySQL과 Delphi의 연동중 transaction 문제 발생했습니다..
기본적으로 MySQL은 트랜잭션을 지원하지 않는걸로 알고 있습니다..
그런데 Delphi에서 MySQL에서 못하는 트랜잭션 처리를 대신 처리해줌으로
해서 MySQL과 Delphi의 연동중 트랜잭션 처리가 가능해지는 걸로 들었습니다.
문제는 그걸 어떻게 구현하느냐 하는 것입니다...
델파이에서는 StartTransaction으로 트랜잭션을 시작하고, Commit이나 Rollback으로
트랜잭션을 끝내는데, MySQL과의 연동에서는 작동되지 않습니다...
부디 MySQL에서도 StartTransaction, Commit, Rollback을 사용할 수 있는
방법을 알려주시기 바랍니다...
안녕하세요!! 백록화 입니다. :)
날씨도 덥고...흐~
흠..님이 알고 계신대로 MySQL은 원래 트랜잭션을 지원하지 않져..다만 트랜잭션을 요구하는 사람들이 많아서 다른 방식으로 지원을 하고 있습니다.
BDB나 InnoDB 가 바로 그것이죠. MySQL의 자체 테이블 타입인 ISAM이나 MyISAM에서는 트랜잭션이 지원하지 않는대신 BDB나 InnoDB로 트랜잭션을 지원하는것입니다.
MyISAM타입의 테이블로 델파이에서 자체적으로 트랜잭션을 하기에는 너무나 힘듭니다. -,.ㅡ;; (과연 그렇게 할런지 -,.ㅡ;;)
요즘엔 InnoDB를 많이 사용하는데 이것을 이용하면 그냥 트랜잭션이 됩니다. 다른 RDB에서 트랜잭션을 사용하는것이랑 별 다를게 없습니다.
이들의 테이블 타입을 사용할려면 윈도플랫폼에서는 바이너리 배포본만 배포함으로 이들 타입이 들어가 컴파일 된 MAX버전을 다운로드 하셔서 설치 하셔야 합니다.
그리고 약간의 설정으로 사용할수 있습니다.
리눅스용은 컴파일할때 옵션을 주고 컴팔 해야합니다.
그럼 이만...후다다다다닥~
always hard and heavy time, bang your head...
writtne by crazy 'ripper' rocka