Q&A

  • 오라클 연결시 왜 자꾸 패스워드를 물을까요?
테이블을 이용해서 데이타를 저장할 겁니다.
테이블을 속성에서 acitve를 True로 설정후 프로그램을 돌리면 에러가 나지않고 잘 저장이 됩니다.
하지만! 처음 실행시 패스워드를 물어요~~
그래서 Database를 이용해서 패스워드 정보를 설정했습니다. 그래도 실행시 패스워드를 자꾸 물어요..
(이 경우 TDatabase와 TTable 연결은 어떻게 하는지요? 이거 서로 연결안해도 되나요?)


그래서 테이블 속성에서 active를 False로 설정하고 프로그램을 돌리니까 실행시 패스워드를 묻지는 않지만
저장시 'Cannot perform this operation on a closed dataset'
에러가 납니다.
이를 어쩝니까? 도무지 해결책을 찾을 수가 없어요..
도와주세요~~~


Table1.Insert;
    Table1.FieldByName('SRV_NAME').AsString := pSvrName;
    Table1.FieldByName('USE_DATE').AsString := strDate;
    Table1.FieldByName('USE_YN').AsString := pUseYn;
    Table1.Post;

많은 분들이 Table1을 오픈해주지 않아서 생기는 에러라고 말씀하시는데..
Table1.open; 또는 Table1.active := true; 시에
또 패스워드를 자꾸 물어요..물음 안되는데~~
4  COMMENTS
  • Profile
    김선아 2006.11.10 20:35

    답변에 감사드립니다.

    물론, 모든 할 수 있는 설정을 다 했었습니다. 그리고 저장프로시져로 구성할 필요성을 느끼지 못했습니다.
    그져 이름과 날짜만 timer를 통해 계속 저장해나가는 프로그램이라 간단하게 TTable을 이용했구요..
    TQuery를 이용해보긴 했는데 알 수 없는 에러가 자꾸 나서 그냥 관뒀습니다.
    시간이 나면 다시 Query를 이용해 테스트를 해보려 합니다.


    자꾸 패스워드를 묻지 않는 방법을 알아냈습니다. 물론, 이 사이트에 올라온 답변들 중에서 구했습니다.
    먼저 odbc를 통해 Oracle DB를 생성한 후에..
    TDatabase 설정에서
    Drivename --> Oracle을 선택합니다.
    Databasename --> odbc에서 생성된 DB의 Aliasname을 적습니다.
    Servername --> 실제 DB 명을 적습니다.
    username, password를 적습니다.
    connet를 True로 설정합니다.
    이랬더니 패스워드를 안묻더군요...^^








  • Profile
    박홍재 2006.11.11 01:43
    오라클을 이용시 가능하다면 ODBC를 이용하지 않으시는 편이 좋을건데요.
    웹상으로 프로그램 하지 않으시는 한...음...
  • Profile
    착한천사 2006.11.11 00:42
    착한천사 김경록입니다.
    한가지가 빠지셨군요..
    <!--CodeS-->
    Database1.LoginPrompt := False;
    <!--CodeE-->

    이게 빠졌네요..
    이 속성이 True면 계속 암호를 물어보죠...  *^^*


  • Profile
    박홍재 2006.11.10 16:18
    일단 TDatabase에서 오라클 연결 설정시 Login Prompt Check를 False로 해 주셔야 하는데 그러지 않으셨군요. 설정에서 유저명 Password를 다 입력을 해 놓아도 이 Login Prompt Check 가 True 가 되어 있으면 항상 Password를 물어 보도록 되어 있습니다. 이 Check를 False를 설정하시고 프로그램을  컴파일 해서 실행해 보시기 바랍니다. 그리고 Table의 Data 입력은 가능하다면 SQL이나 Stored Procedure를 이용하시는 것이 테이블을 직접 이용하시는 것 보다 좋을 겁니다. (오라클을 계속해서 사용하실 거면 Stored Procedure에 대해 더 공부하시면 나중에 본인 경력이나 일에도 더욱 좋겠지요. )^^ 그럼 즐코