2010-08-02 3 views
1

.dbf 또는 .mdb 파일의 Windows 바탕 화면 속성에서 "읽기 전용"을 선택하면 과 델파이 6 ADO 연결 (예 : .mdb 파일의 경우 Jet 또는 .dbf 파일의 경우 ODBC) 은 그런 다음 해당 데이터베이스를 열 때 TADOTable.CanModify가 true를 반환하고 TADOTable.ReadOnly는 false를 반환합니다. 실제로 파일을 검색하지 못하면 은 실제로 읽기 전용입니다. .CanModify 단지 지지대 (xUpdates) 및 대해 .readonly가 집합 LockType에서 설정이 (심지어 "읽기 전용 데이터 소스를" TADOConnection.Properties에 0을 반환)에서 설정처럼 VCL 소스에서 ADO는 읽기 전용으로 표시된 데이터베이스를보고 할 수 없습니까?

는 그렇게 보인다 이러한 속성은 데이터베이스의 원래 읽기 전용 상태를 감지하는 것과는 대조적으로 연결 문자열 검색 옵션과 비슷합니다.

데이터베이스를 검색하는 적절한 ADO 기술이 TADOTable.Edit 시도되기 전에 읽기 전용 으로 표시되어 있습니까? 솔루션은 이 아니고이되어야한다고 가정합니다. Windows 파일에만 해당하는 일 뿐이지 만 데이터베이스에 독립적 인 기술인 은 ADO 만 사용해야합니다. 해결책은 무엇입니까?

답변

0

유감이지만 할 수는 없습니다.

그러나 파일 이름이 연결 문자열의 일부이므로 사용자가 직접 확인할 수 있습니다.

+0

.txt 또는 .dbf 파일의 경우 연결 문자열의 이름은 "데이터베이스"(상위 폴더)이고 파일은 테이블 (읽기 전용 일 수도 있음) 일 수 있습니다. 따라서 두 레벨 (일부 데이터베이스의 경우 연결 문자열에 지정된 파일 또는 다른 종류의 데이터베이스의 경우 테이블 자체)에서 확인해야합니다. –

관련 문제