|
하안인 님이 쓰신 글 :
: 에보니.^ㅅ^ 님이 쓰신 글 :
: : 하안인 님이 쓰신 글 :
: : : 답변 감사드립니다.
: : :
: : : 로켈에서 사용할때에도 커서을 clUseServer로 놓고 사용해야 하나요.
: : :
: : : 한가지 더 여쭤보겠습니다.
: : : BDE-Native가 더 좋다고 하셨는데요.
: : : 오피스2000의 데이타베이스를 OpenDialog로 연결하려면 어떻게 해야되나요.
: : : (Alias를 쓰면 안되거든요. 어떤 파일을 열건지 프로그램당시에는 몰라서요.)
: : : 오피스97에서 쓰던 방식으로는 연결이 되었느데 2000은 연결이 안되네요.
: :
: : --- 제가 말뜻을 이해를 못하겠습니다.... =ㅅ=;;
: :
: : 그야 OpenDialog의 InitialDir , FileName 속성을 이용하면 될것 같은데요
:
: .
:
: if(OpenDialog1->Execute())
: {
: Table1->Active = false;
: Database1->Connected = false;
: Database1->Params->Clear();
: Database1->Params->Add("DATABASE NAME="+OpenDialog1->FileName);
: Database1->Params->Add("USER NAME=");
: Database1->Params->Add("OPEN MODE=READ/WRITE");
: Database1->Params->Add("LANGDRIVER=");
: Database1->Params->Add("SYSTEM DATABASE=");
: Database1->Params->Add("PASSWORD=");
: Database1->Connected = true;
: Table1->IndexFieldNames ="a;b;c;";//인덱스 필드 이름 적어주고
: Table1->TableName = "";//테이블 이름 적어주고..
: Table1->Active = true;
: }
: 위와 같이 해주면 오피스97에서는 열리는데 2000에서는 열리지가 않아요.
:
:
음 97은 되는데 2000은 안되는 이유가 드라이버 dll 이 달라서일 겁니다.
위의 님의 코드에선 지금 그 부분이 빠져 있는것 같군여.... =ㅅ=;;
DLL32 부분을 입력하시고 그 값을 IDDA3532.DLL 이나 IDDAO32.DLL 로 바꿔보세용
배포의 복잡한 문제는 감수하셔야 겠죠?
음 이것보다는 대용량의 로컬 디비 관리법이 있긴한데..... 사알딱 귀뜀을 하자면 ^ㅅ^
걍 배포가 쉬운 ado 로 뚝딱 해버리고 프로그램 시작시에 스레드 하나 부려서 닭대가리 사용자들
에겐 데이터 최적화 중임니다란 미사여구로 살짝 속인다음에 어플이 사용하는 디렉토리중에 하나로
오래된 자료나 묵은 자료들은 몽땅 딴 디렉토리의 파일로 옮긴 다음 새끈한 자료들로 주 디비를
채우는 겁니다. 이왕이면 에러나 깨진 디비 잡는 스레드도 돌리고 널 디비나 이전 디비로 복구하는
넘도 하나 부려여 (물론 내돈 안내죠~ =ㅅ=;;) 아 물론 옛날 자료도 검색가능하게 해야져~
연결스트링이나 앨리어스 바꿔가면서 캬캬캬 ^ㅅ^
닭대가리 엔드유저 우와 이거 왜이렇게 빠르지~ 자네 어떤 알고리즘 썼나? 캬캬캬~ ^ㅅ^
그러면 막 40-50만건이 되어도 쌩쌩 돌아가서 유지보수 시간도 줄이거나 아예 안합니다. 칭찬듣지
의뢰들어와 똑같은거 커스터마이징의 귀재인 빌더로 뚝딱 해치우고 돈 벌고 즐거운 인생 ~ ^ㅅ^
자 떠나세요~ 더 큰 세계로
잔대가리는 자질구레한일을 처리하는덴 그만입니다. ^ㅅ^
|