ASP 및 MDB를 사용하는 사이트는 특정 MDB가 링크 테이블을 사용하고 현재 디렉토리의 다른 MDB 테이블로 연결되어 데이터 공유를 달성 할 수 있습니다.
문제가 다가오고 있습니다. 웹 사이트를 웹 사이트에 게시 할 때 온라인 공간 경로는 내 기본 컴퓨터와 다르므로 링크 테이블이 실패하고 웹 페이지를 열 수 없습니다.
솔루션은 다음과 같습니다.
하나는 기계의 온라인 공간과 정확히 동일한 디렉토리 구조를 만드는 것입니다. 그러나 이것은 종종 웹 사이트를 변경 해야하는 경우 매우 번거 롭습니다.
한 가지 방법은 링크 테이블이 현재 디렉토리의 MDB 파일에 연결하는 상대 경로를 사용하도록하는 것입니다. (그건 그렇고, 접근은 정신적으로 지체되며 링크 테이블은 절대 경로를 기록합니다).
또 다른 방법은 프로그래밍 (ASP 또는 로컬 VBA)을 통해 링크 테이블의 링크를 수정하는 방법입니다. (그건 그렇고, 액세스는 여전히 정신적으로 지연되어 있습니다. 수동 업데이트를 사용하여 링크 테이블을 업데이트 할 수 있습니다. 해당 경로에서 MDB를 찾아야합니다! 그러나 로컬 경로는 온라인 경로와 다릅니다).
누구든지 위의 마지막 두 가지 방법을 구현하는 방법을 말해 줄 수 있습니까?
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
다음은 내가 사용하고있는 ADOX 코드입니다. 내가 언급 한 액세스 에이 기능이 있음을 증명하기 위해 (이것은 액세스의 문제입니까? 이것이 ADO 모델이 해결 해야하는 문제입니다. 그리고 당신은 잘못된 부분을 언급하고 ASP 부분을 언급하는 것이 더 적절합니다). 액세스하는 사람들은 그것을 이해해야합니다. 당신이 그것을 이해할 수 없다면, 나는 후회 만 말할 수 있습니다.
PublicFunctionNewLinkedExternalTableMDB ()
dimstrtargetdb () asstring
DimstrProviderstring () Asstring
dimstrsourcetbl () asstring
dimstrlinktblname () asstring
DIMCATDBASADOX.CATALOG
DimtBllinkasadox.table
Dimtmplinkasadox.table
Dimiasinteger
Dimjasinteger
setcatdb = newadox.catalog
catdb.activeconnection = currentProject.connection
i = catdb.tables.count
redimstrtargetdb (i)