Q&A

  • 날짜연산과 UpdateSql사용법
날짜연산을 다음과 같이 했은데 값이 엉뚱하게 나오더군요.

strtodate('1999-05-20')-strtodate('1999-04-21')

어떻게 연산을 해야하는지 혹 bde에서 날짜모드를 4자리로 했구 구분자를 -

로 세팅은 해놓긴 했는데. 결과값이 년도가 2자리로 나오더군요.

어떻게 하면되는지.



UpdateSql을 사용하면 꼭 DBgrid를 사용해서 삽입,삭제,수정을 해야만 하는지요

일반적인 에디트 박스에 입력하고 추가 버튼을 누르면 자료가 추가 되도록

할 수는 없는지요...

궁금합니다.

1  COMMENTS
  • Profile
    김운필 1999.07.21 20:26
    심경섭 께서 말씀하시기를...

    > 날짜연산을 다음과 같이 했은데 값이 엉뚱하게 나오더군요.

    > strtodate('1999-05-20')-strtodate('1999-04-21')

    > 어떻게 연산을 해야하는지 혹 bde에서 날짜모드를 4자리로 했구 구분자를 -

    > 로 세팅은 해놓긴 했는데. 결과값이 년도가 2자리로 나오더군요.

    > 어떻게 하면되는지.

    >

    > UpdateSql을 사용하면 꼭 DBgrid를 사용해서 삽입,삭제,수정을 해야만 하는지요

    > 일반적인 에디트 박스에 입력하고 추가 버튼을 누르면 자료가 추가 되도록

    > 할 수는 없는지요...

    > 궁금합니다.







    첫번째 질문에 대한 답변은 간단합니다..

    윈도우즈의 시스템에서 설정되어 있는 날짜 포멧을 바꾸면 됩니다.

    제어판 -> 국가별 설정 -> 날짜 sheet -> 간단하게표시 형식을

    'yyyy-mm-dd' 로 수정하고서 테스트 해 보세요..



    두번째는 UpdateSql 컴포넌트에 Apply라는 메소드 있습니다.

    (델파이 도움말 참고 하세요.)

    버튼을 Click하는 이벤트 마지막 부분에 이 메소드를 적용하면 되겠지요...

    ========================================================================

    procedure Apply(UpdateKind: TUpdateKind);



    Description



    Call Apply to set parameters for an SQL statement and execute it to update a record. UpdateKind indicates which SQL statement to bind and execute, and can be one of the following values:



    Value Meaning



    ukModify Bind and execute the SQL statement in the ModifySQL property

    ukInsert Bind and execute the SQL statement in the InsertSQL property

    ukDelete Bind and execute the SQL statement in the DeleteSQL property



    Apply is primarily intended for manually executing update statements from an OnUpdateRecord event handler.



    Note: If an SQL statement does not contain parameters, it is more efficient to call ExecSQL instead of Apply.

    ==================================================================

    앗, 처음으로 답변하는 거라 떨리는데요..

    충분한 답변이었는지 모르겠네요...