TTable와 TDataSource를 연결하여 AutoEdit를 true로 설정하면 TDataSource에 연결된 Grid의 마지막줄에서 아래 화살표키를 누르면 자동으로 자료가 추가되는데.... TTable대신 TQuery를 사용했을때도 마찬가지의 결과를 얻을 수 있나요?
이재식
•
1999.09.29 05:50
이양규 wrote:
> TTable와 TDataSource를 연결하여 AutoEdit를 true로 설정하면
> TDataSource에 연결된 ...
이양규
•
1999.09.29 21:28
재식님의 답변 감사합니다.
많은 도움이 되었습니다.
그런데 저는 2개의 테이블을 같이 사용해야 하는...
이재식
•
1999.09.30 18:04
이양규 wrote:
> 재식님의 답변 감사합니다.
> 많은 도움이 되었습니다.
>
> 그런데 저는 2개의 테이...
> TTable와 TDataSource를 연결하여 AutoEdit를 true로 설정하면
> TDataSource에 연결된 Grid의 마지막줄에서 아래 화살표키를
> 누르면 자동으로 자료가 추가되는데....
> TTable대신 TQuery를 사용했을때도 마찬가지의 결과를 얻을 수
> 있나요?
이재식 Wrote :
네, 마찬가지 입니다.
그런데요, TTable컴포넌트를 DataSource와 연결시키면
DataSource속성 중 AutoEdit는 디폴트로 true,
테이블 컴포넌트의 readonly속성은 false가 되요.
그래서, 위에서 설명한 것처럼 신규입력 및 수정이 가능해요.
그런데, Query컴포넌트는 좀 다릅니다.
테이블 컴포넌트와 비슷하지만, DataSource와 연결시키면
역시 DataSource속성의 AutoEdit는 true입니다만,
쿼리 컴포넌트에는 readonly속성이 없습니다.
대신 RequestLive속성이 있죠. 쿼리를 open(or Active := true)하기전에
반드시 이 속성값이 true로 되어 있어야 합니다.
이 속성은 디폴트로 false이기 때문에 말입니다.
물론, 위의 설명은 여러개의 테이블을 조인하지 않는 경우입니다.
조인을 하면 쿼리 컴포넌트는 무조건 수정이 안되는 읽기전용 속성으로
변합니다. 그래서 UpdateSQL컴포넌트를 써야 해요.
그러나, 이 컴포넌트가 자동적으로 모든것을 알아서 해준다고 생각하시면
곤란합니다. 다만 조인결과에 대해 수정모드로 바꾸어 줄뿐, 실질적으로
물리 DB에 삭제, 수정, 입력하는 작업등은 코딩해 주어야 되죠.
가급적이면 UpdateSQL컴포넌트는 쓰지 않는 방향으로 하는것이
좋습니다. 특히 C/S개발에서는 말이죠.
그럼, 도움이 되셨나요?
즐거운 시간되시길...