Q&A

  • ParamByName을 쓰면....??????
안녕하세요..
궁금한게 있어서 이렇게 질문 올립니다.
델파이 첨 나왔을때부텀 사용해온 선배님이 계신데
예전에 ParamByName을 사용하면 값을 못넘기는 델파이 버그가 있었다고 하더군요.
그래서 그거를 쓰지 말라구 맨날 강조를 하시는데,
군데 그걸 안쓰면 매번 SQL문장이 달라지니 DB에 오히려 안좋은 영향을 끼칠것 같은데요...
소스도 지저분하고 관리하기도 힘들고, 또 헷갈리고요..
솔직히 저는 그런 현상을 본적이 없는데,
전 델파이 4.0부터 사용을 해봤으니 알 수가 없어요.
예전엔 그랬는데 지금은 해결이 되었는지,
아니면 예전에도 그런 문제는 없었는지,
아니면, 지금도 그런 문제가 있으니 정말로 사용하면 안되는 것인지..
어떻게 확답을 좀 얻을 수 없을까요?
경험으로 미루어 보아 그런적 없었다.. 이런거 말구요, 딱 증명할 수 있는...
ㅜㅠ;;
어떻게 해야할지 모르겠어요.
ParamByName을 사용하는 것이 현명한 것인지, 안사용하는것이 현명한것인지..

아시는 분 부탁드립니다...
수고하세요..! :)
4  COMMENTS
  • Profile
    한태영 2002.04.26 07:57
    insert 할 때,
    parambyname으로 받아서 insert를 수행하면, 오류가 뜨는데
    변수에 값을 직접넣거나 하면 에러가 안나는 일이 생겼습니다.

    확인을 해보니,
    oracle을 쓸 때, Microsoft ODBC for oracle 요넘을 쓰니까
    위와 같이 에러가 나더군요.

    이걸.. oracle 드라이버로 바꾸니까 문제가 없었습니다.
    참고로 위의 것은 EasyBase등을 사용할 때 쓰려고 만들어놓은
    것이었습니다.

    참고가 되셨기를..
  • Profile
    신석기 2002.04.26 03:30
    전 델파이2.0 부터 사용한 유저입니다...  ^^; (실력은 ^^;)

    ParamByName 은 별이상이 없는것 같습니다.
    어떻게 사용하느냐가 문제일것 같네요
    델파이 초기엔 그런증상이 조금있다곤 했지만 delphi3부턴 없는것 같습니다.

    5년간 ParamByName을 사용했는데 이상한 증상은 경험하지 못했습니다.

    그런데, 최근에 경험(?)했지요.... ^^;
    ADO, WebConnect, 등을 사용해 ActiveX 사용시
    COM+ Server와 parameter교환시 type 준수 규칙을 어기면 발생하더군요
    그것도 개발시점에서 정확한 Type선언이면 문제해결됩니다.

    StoreProcedure사용시는 아직 해결방법이 찾을수 없어 Try Exception처리로
    Create Param... 을 사용하면 조치는 가능하구요....

    질문에 대한 답이 조금 장황했네요 ...^^;
    암툰 일반 c/s에선 전혀 문제가 없을것 같네요...
  • Profile
    major 2002.04.26 06:38
    흠 정확한 답변이 될지는 모르겠지만 제가 알고 있는 내용을 함 설명을 해 보겠습니다.
    일단은 제가 알기로는 Param..에 대한 오류는 없는 걸로 알고 있습니다.

    단지 디버그를 할 때 좀 힘들다는 단점이 있긴 하지만 약간만 수를 쓰시면 별로 그렇게 힘들지 않을 것 같네여..

    글구 디버그가 힘들다는 것은 저는 개인적으로 잘못된 값이 들어 갔는 지를 보기위해서 바로 Text값이나 필드값을 넣어서 보죠..
    근데 Param..은 디버그 모드에서 바로 값을 볼 수 없다는 단점이 있지요..
    대신에 다른 어떤 분들은 메세지를 뿌린다거나 혹은 txt파일로 저장하는 함수를 만들어서 값을 보시더라구요..
    그래도 전 개인적으로 좀 힘들던데..
    어쨌든 좀 이야기가 길어진것같은데..
    결과는 버그 같은 것은 없는 걸로 알고 있습니다.
    단지 디 버그가 좀 힘들더라고요..^^;;
    그럼 즐프하시고여..
    전 이만..
  • Profile
    또치 2002.04.27 02:26
    (--)(__)(--)(__)