Q&A

  • DB공유에 대하여...
답변이 없고 너무 급한 상황이라 다시 질문을

드린것을 죄송스럽게 생각합니다.





앞의 질문에 대한 유도삼님의 답변 대단히 감사합니다.



A를 서버로 놓고, B,C에서는

프로그램을 실행하는데는 별문제가 없습니다.

그런데 A컴퓨터에서 실행한 상태에서

B에서 실행하면 다음과 같은 메세지가 나옵니다.

'Directory is controlled by other .NET File'

Directory c:Test

File : H:PDOXUSRS.LCK



참고로 A의 컴퓨터 C:TEST를 네트워크드라이브 'H:'로 연결되었습니다.



너무 초보라서 무엇이 잘못인지 알수가 없군요.



고수님의 자세한 답변부탁드립니다.









----------------------------------------------------------------------------------

유도삼님의 내용



다음의 순서로 해 보실래요?

서버의 경우

1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

2. C:를 공유-읽기/쓰기

3. Bde Admin실행

4. Driver-Native-Paradox-Net Dir-C:로 설정

5. System-Init-Local Share-True로 설정

6. Alias설정-C:Data

-자료가 있는 방이 Data이라면

7. 저장

8. 리부팅

클라이언트의 경우

1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

2. Bde Admin실행

3. Driver-Native-Paradox-Net Dir-ServerC로 설정

-서버의 컴이름이 Server이라면

4. System-Init-Local Share-True로 설정

5. Alias설정-ServerCData

-서버의 컴이름이 Server이고 자료가 있는 방이 Data이라면

6. 저장

7. 리부팅

일단 위의 순서대로 하셨다면 자료 공유는 된겁니다.

클라이언트는 몇대든 관계 없습니다.(300대까지?)

자료를 공유한 후에 여러 컴에서 자료를 사용할 때 주의할 사항은

한 가지입니다. 이는 한 컴에서 작업하고 있는 내용을 다른 컴에서

즉각 알 수 없다는 것입니다. 이를 해결하는 방법은 여러 가지가

있을 수 있습니다. 사실 이 한가지가 전부라 할 수 있죠.

자세한 내용은 Q&A를 검색하심이 좋을 듯 하네요.

제가 제안하는 방법은 임시테이블을 하나 작성해서 자료를 읽기/쓰기 할때

작업한 내용을 임시테이블에 기록한 후 짬짬이 임시테이블을 조회해서

어떤 작업이 일어났는지를 확인하는 것입니다. 확인 후 작업이 발생한

테이블을 갱신하면 됩니다. 단 임시 테이블을 조회하기 전에는 항상 닫았다가

다시 열어야만 가장 최근에 갱신된 내용을 알 수가 있죠.

말로 쓰려니 조금 애매하군요.

도움이 되었길 바라며...



이영일 wrote:

> 안녕하십니까? 저는 델파이 초보입니다.

>

> Paradox DB를

> A를 서버로 간주하고 A,B,C 컴퓨터에서 삽입,편집,조회 작업을

> 하려고 하는데 너무 어렵네요?

> 앞에 여러분들이 게재한 내용을 보면 BDE adminstator를 실행하여

> 1.SYSTEM-INIT에 있는 LOCAL SHARE를 TRUE로 설정하고,

> DRIVERS-NATIVE-PARADOX의 NET DIR을 공유할 수 있는 드라이브를 설정하려고

> 했습니다.

> 2. 그리고 델파이에서 ALIAS를 위에서 선택한 드라이브로 설정하면 된다고 했습니다.

> 그런데 B,C에서 A 컴퓨터의 DB내용을 입력, 수정은 가능했으나, A컴퓨터 자체에서는

> 다시 Alias를 바꾸지 않으면 작업이 안되고, 또 A가 실행된 상태에서는 B,C에서는

> 실행할 수가 없었습니다. 에러가 Paradox.lck 어쩌고 저쩌고(죄송,자세히는 모르겠습니다).

> 또 그와 반대로 B를 실행한 상태에서 A를 실행하면 그역시 만찬가지입니다.

> 고수님의 자세한 설명을 부탁드리겠습니다.

>

>

> 그리고 DB공유에서 주의할 점이 있으면

> 조언 부탁드립니다.

>

>

> 감사합니다.

2  COMMENTS
  • Profile
    hart 2000.03.16 18:27
    한 컴퓨터에서 실행화일 위치하고 다른 컴퓨터에서 여러명이 실행하려면, 락 화일는 실행자 자신의 컴퓨터에 생성되도록 처리해야 락문제가 해결됩니다.. 수고..



    Session.NetFileDir := 'C:tempacsaccount';

    Session.PrivateDir := 'C:tempacsaccount';

    위치는 마음되로 하세요..



    이영이 wrote:

    > 답변이 없고 너무 급한 상황이라 다시 질문을

    > 드린것을 죄송스럽게 생각합니다.

    >

    >

    > 앞의 질문에 대한 유도삼님의 답변 대단히 감사합니다.

    >

    > A를 서버로 놓고, B,C에서는

    > 프로그램을 실행하는데는 별문제가 없습니다.

    > 그런데 A컴퓨터에서 실행한 상태에서

    > B에서 실행하면 다음과 같은 메세지가 나옵니다.

    > 'Directory is controlled by other .NET File'

    > Directory c:Test

    > File : H:PDOXUSRS.LCK

    >

    > 참고로 A의 컴퓨터 C:TEST를 네트워크드라이브 'H:'로 연결되었습니다.

    >

    > 너무 초보라서 무엇이 잘못인지 알수가 없군요.

    >

    > 고수님의 자세한 답변부탁드립니다.

    >

    >

    >

    >

    > ----------------------------------------------------------------------------------

    > 유도삼님의 내용

    >

    > 다음의 순서로 해 보실래요?

    > 서버의 경우

    > 1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

    > 2. C:를 공유-읽기/쓰기

    > 3. Bde Admin실행

    > 4. Driver-Native-Paradox-Net Dir-C:로 설정

    > 5. System-Init-Local Share-True로 설정

    > 6. Alias설정-C:Data

    > -자료가 있는 방이 Data이라면

    > 7. 저장

    > 8. 리부팅

    > 클라이언트의 경우

    > 1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

    > 2. Bde Admin실행

    > 3. Driver-Native-Paradox-Net Dir-ServerC로 설정

    > -서버의 컴이름이 Server이라면

    > 4. System-Init-Local Share-True로 설정

    > 5. Alias설정-ServerCData

    > -서버의 컴이름이 Server이고 자료가 있는 방이 Data이라면

    > 6. 저장

    > 7. 리부팅

    > 일단 위의 순서대로 하셨다면 자료 공유는 된겁니다.

    > 클라이언트는 몇대든 관계 없습니다.(300대까지?)

    > 자료를 공유한 후에 여러 컴에서 자료를 사용할 때 주의할 사항은

    > 한 가지입니다. 이는 한 컴에서 작업하고 있는 내용을 다른 컴에서

    > 즉각 알 수 없다는 것입니다. 이를 해결하는 방법은 여러 가지가

    > 있을 수 있습니다. 사실 이 한가지가 전부라 할 수 있죠.

    > 자세한 내용은 Q&A를 검색하심이 좋을 듯 하네요.

    > 제가 제안하는 방법은 임시테이블을 하나 작성해서 자료를 읽기/쓰기 할때

    > 작업한 내용을 임시테이블에 기록한 후 짬짬이 임시테이블을 조회해서

    > 어떤 작업이 일어났는지를 확인하는 것입니다. 확인 후 작업이 발생한

    > 테이블을 갱신하면 됩니다. 단 임시 테이블을 조회하기 전에는 항상 닫았다가

    > 다시 열어야만 가장 최근에 갱신된 내용을 알 수가 있죠.

    > 말로 쓰려니 조금 애매하군요.

    > 도움이 되었길 바라며...

    >

    > 이영일 wrote:

    > > 안녕하십니까? 저는 델파이 초보입니다.

    > >

    > > Paradox DB를

    > > A를 서버로 간주하고 A,B,C 컴퓨터에서 삽입,편집,조회 작업을

    > > 하려고 하는데 너무 어렵네요?

    > > 앞에 여러분들이 게재한 내용을 보면 BDE adminstator를 실행하여

    > > 1.SYSTEM-INIT에 있는 LOCAL SHARE를 TRUE로 설정하고,

    > > DRIVERS-NATIVE-PARADOX의 NET DIR을 공유할 수 있는 드라이브를 설정하려고

    > > 했습니다.

    > > 2. 그리고 델파이에서 ALIAS를 위에서 선택한 드라이브로 설정하면 된다고 했습니다.

    > > 그런데 B,C에서 A 컴퓨터의 DB내용을 입력, 수정은 가능했으나, A컴퓨터 자체에서는

    > > 다시 Alias를 바꾸지 않으면 작업이 안되고, 또 A가 실행된 상태에서는 B,C에서는

    > > 실행할 수가 없었습니다. 에러가 Paradox.lck 어쩌고 저쩌고(죄송,자세히는 모르겠습니다).

    > > 또 그와 반대로 B를 실행한 상태에서 A를 실행하면 그역시 만찬가지입니다.

    > > 고수님의 자세한 설명을 부탁드리겠습니다.

    > >

    > >

    > > 그리고 DB공유에서 주의할 점이 있으면

    > > 조언 부탁드립니다.

    > >

    > >

    > > 감사합니다.

  • Profile
    이영일 2000.03.17 02:10
    저도 아래와 같이 시도해보았지만 무엇이 잘못된 것인지

    Paradox.lck, Pdoxusrs.lck가 지정한 디렉토리와

    실행화일이 있는 곳 모두 생성되더군요

    그래서 동시에 두명이 사용할 수가 없어요.

    제발,제발 도와주세요.....



    Session.NetFileDir := 'C:tempacsaccount';

    Session.PrivateDir := 'C:tempacsaccount';



    hart wrote:

    > 한 컴퓨터에서 실행화일 위치하고 다른 컴퓨터에서 여러명이 실행하려면, 락 화일는 실행자 자신의 컴퓨터에 생성되도록 처리해야 락문제가 해결됩니다.. 수고..

    >

    > Session.NetFileDir := 'C:tempacsaccount';

    > Session.PrivateDir := 'C:tempacsaccount';

    > 위치는 마음되로 하세요..

    >

    > 이영이 wrote:

    > > 답변이 없고 너무 급한 상황이라 다시 질문을

    > > 드린것을 죄송스럽게 생각합니다.

    > >

    > >

    > > 앞의 질문에 대한 유도삼님의 답변 대단히 감사합니다.

    > >

    > > A를 서버로 놓고, B,C에서는

    > > 프로그램을 실행하는데는 별문제가 없습니다.

    > > 그런데 A컴퓨터에서 실행한 상태에서

    > > B에서 실행하면 다음과 같은 메세지가 나옵니다.

    > > 'Directory is controlled by other .NET File'

    > > Directory c:Test

    > > File : H:PDOXUSRS.LCK

    > >

    > > 참고로 A의 컴퓨터 C:TEST를 네트워크드라이브 'H:'로 연결되었습니다.

    > >

    > > 너무 초보라서 무엇이 잘못인지 알수가 없군요.

    > >

    > > 고수님의 자세한 답변부탁드립니다.

    > >

    > >

    > >

    > >

    > > ----------------------------------------------------------------------------------

    > > 유도삼님의 내용

    > >

    > > 다음의 순서로 해 보실래요?

    > > 서버의 경우

    > > 1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

    > > 2. C:를 공유-읽기/쓰기

    > > 3. Bde Admin실행

    > > 4. Driver-Native-Paradox-Net Dir-C:로 설정

    > > 5. System-Init-Local Share-True로 설정

    > > 6. Alias설정-C:Data

    > > -자료가 있는 방이 Data이라면

    > > 7. 저장

    > > 8. 리부팅

    > > 클라이언트의 경우

    > > 1. 모든 디렉토리를 뒤져서 *.net, *.lck파일을 모두 찾아 삭제

    > > 2. Bde Admin실행

    > > 3. Driver-Native-Paradox-Net Dir-ServerC로 설정

    > > -서버의 컴이름이 Server이라면

    > > 4. System-Init-Local Share-True로 설정

    > > 5. Alias설정-ServerCData

    > > -서버의 컴이름이 Server이고 자료가 있는 방이 Data이라면

    > > 6. 저장

    > > 7. 리부팅

    > > 일단 위의 순서대로 하셨다면 자료 공유는 된겁니다.

    > > 클라이언트는 몇대든 관계 없습니다.(300대까지?)

    > > 자료를 공유한 후에 여러 컴에서 자료를 사용할 때 주의할 사항은

    > > 한 가지입니다. 이는 한 컴에서 작업하고 있는 내용을 다른 컴에서

    > > 즉각 알 수 없다는 것입니다. 이를 해결하는 방법은 여러 가지가

    > > 있을 수 있습니다. 사실 이 한가지가 전부라 할 수 있죠.

    > > 자세한 내용은 Q&A를 검색하심이 좋을 듯 하네요.

    > > 제가 제안하는 방법은 임시테이블을 하나 작성해서 자료를 읽기/쓰기 할때

    > > 작업한 내용을 임시테이블에 기록한 후 짬짬이 임시테이블을 조회해서

    > > 어떤 작업이 일어났는지를 확인하는 것입니다. 확인 후 작업이 발생한

    > > 테이블을 갱신하면 됩니다. 단 임시 테이블을 조회하기 전에는 항상 닫았다가

    > > 다시 열어야만 가장 최근에 갱신된 내용을 알 수가 있죠.

    > > 말로 쓰려니 조금 애매하군요.

    > > 도움이 되었길 바라며...

    > >

    > > 이영일 wrote:

    > > > 안녕하십니까? 저는 델파이 초보입니다.

    > > >

    > > > Paradox DB를

    > > > A를 서버로 간주하고 A,B,C 컴퓨터에서 삽입,편집,조회 작업을

    > > > 하려고 하는데 너무 어렵네요?

    > > > 앞에 여러분들이 게재한 내용을 보면 BDE adminstator를 실행하여

    > > > 1.SYSTEM-INIT에 있는 LOCAL SHARE를 TRUE로 설정하고,

    > > > DRIVERS-NATIVE-PARADOX의 NET DIR을 공유할 수 있는 드라이브를 설정하려고

    > > > 했습니다.

    > > > 2. 그리고 델파이에서 ALIAS를 위에서 선택한 드라이브로 설정하면 된다고 했습니다.

    > > > 그런데 B,C에서 A 컴퓨터의 DB내용을 입력, 수정은 가능했으나, A컴퓨터 자체에서는

    > > > 다시 Alias를 바꾸지 않으면 작업이 안되고, 또 A가 실행된 상태에서는 B,C에서는

    > > > 실행할 수가 없었습니다. 에러가 Paradox.lck 어쩌고 저쩌고(죄송,자세히는 모르겠습니다).

    > > > 또 그와 반대로 B를 실행한 상태에서 A를 실행하면 그역시 만찬가지입니다.

    > > > 고수님의 자세한 설명을 부탁드리겠습니다.

    > > >

    > > >

    > > > 그리고 DB공유에서 주의할 점이 있으면

    > > > 조언 부탁드립니다.

    > > >

    > > >

    > > > 감사합니다.