프리 테이블의 기존 클리퍼 코드를 데이터 사전으로 변환 중입니다. 테이블을 읽고 쓸 수는 있지만 인덱스를 만들 수는 없습니다. 여기 클리퍼를 사용하여 데이터 사전에 색인 만들기
코드이다connSaisie := DacSession():new(GetSsoConnection(1))
connSaisie:SetDefault()
DbeInfo(COMPONENT_DATA, ADSDBE_RIGHTS_MODE, ADSDBE_CHECKRIGHTS )
DbeInfo(COMPONENT_DATA, ADSDBE_LOCK_MODE, ADSDBE_PROPRIETARY_LOCKING)
DbeInfo(COMPONENT_DATA , ADSDBE_TBL_MODE, ADSDBE_CDX)
DbeInfo(COMPONENT_ORDER, ADSDBE_TBL_MODE, ADSDBE_CDX)
DBUSEAREA (.F., , "Nomencla", connSaisie, .F., .F.)
cTag:="SEBTAG"
SELECT Nomencla
Index on Code_nomen + Padl(Alltrim(Nom_champ1), 5, "0") +;
Padl(Alltrim(Nom_champ2), 4, "0") +;
Padl(Alltrim(Nom_champ3), 3, "0") TAG (cTag)
Set Order to TAG (cTag)
(GetSsoConnection(1))
구문 적절한 연결 문자열 검색을 담당.
인덱스는 생성되지만 데이터 딕셔너리 용으로 정의 된 데이터베이스 또는 임시 폴더 대신 실행 가능 디렉터리에있는 것이 문제입니다.
나는 어떤 도움이나 포인터를 기대하고 있으며 문제를 재현하기위한 샘플 테이블을 생성하기 위해 SQL 스크립트를 제공하고자합니다.
감사합니다.
답장을 보내 주셔서 감사합니다. 이것은 사실 내 문제입니다. Clipper가 파일이 어디에 있는지를 데이터 사전에 속한 경우 자동으로 이해하도록합니다. 프로세스가 데이터 디렉토리에 액세스 할 수 없으며 데이터 사전을 거쳐야합니다. 그래서 본질적으로 데이터 사전에 대한 연결을 연 다음 해당 데이터 사전 내에서 테이블을 연 다음 해당 테이블에 첨부 된 인덱스를 만드는 방법을 찾고 있습니다. 이 색인은 서버가 데이터 디렉토리에 직접 작성해야합니다. – kuzkot