Q&A

  • Oracle에서 파라미트 전달 방법.......
아래의 코드는 중복을 체크하는 함순데요...

USERINFO 테이블에 동일한 값이 존재하면 wUpdate를 존재하지 않으면 wInsert의 결과가

나와야 합니다.

ORACLE의 sqlplus에선 SQL이 정상적으로 값이 반환 되는데, 델파이의 파리미트로

값을 전달하면 동일한 값이 있는데도 찾지 못하고 wInsert의 결과가 나타납니다.

MS-SQL에선 문제없이 동작하는것 같은데, 잘못된 점과 해결방법을 알려주세요...

type
TSaveMode = (wInsert, wUpdate, wNone);

//저장모드 확인.
function TfrmUInfo.SaveMode(AValue: String): TSaveMode;
var
Query : TQuery;
begin
Query := TQuery.Create(Self);
Query.DatabaseName := DM.DB.DatabaseName;
try
   with Query do
   begin
     SQL.Clear;
     SQL.Add('SELECT COUNT(*) FROM USERINFO WHERE USRID = :USRIDZ');
     ParamByName('USRIDZ').AsString := AValue;
     Open;

     if Fields[0].AsInteger then
       Result := wUpdate
     else
       Result := wInsert;
   end;
finally
   Query.Free;
end;
end;
1  COMMENTS
  • Profile
    머슴 2003.02.21 20:31
    Count(*)의 반환값은 자료가 있던 없던  반드시 값을 가지고 있습니다.  

    따라서 if Fields[0].AsInteger > 0  then 으로 변경하셔야 할것 같습니다.


    • 맑은물
    • 2003.02.21 21:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2003.02.22 00:36
      음.. 0으로 리턴될거 같네여.. 근데, IsNull 같은 예약어로 먼저 조회 구문에 삽입하지 않나여? NULL...
    • 김도성
    • 2003.02.21 21:27
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 열심히
      2003.02.21 21:59
      위에서 보이듯이 TDBEdit 클래스를 찾을수가 없닥 그러네요.. 디비에디트를 쓰면.. 이름: TDBEdit; ...
    • 김동훈
      2003.02.21 22:05
      감사합니다. 이렇게 빠른 답변을 주시다니...
    • 박철식
    • 2003.02.21 21:14
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2003.02.22 00:15
      오류 메세지는 무엇이었나요? 프로그램의 시작루틴에서 윈도그 9x 전용 함수가 쓰여진게 아닌지 살...
    • 이순구
      2003.02.21 21:50
      델마당에 가면 양병규님의 멀티데스트탑 소스가 있습니다... 98에서는 멀티데스크탑을 지원하지 않는다는...
    • 끈기아빠
      2003.02.21 22:49
      여러곳을 헤매느라 시간을 많이 소비했는데.... 가르켜 주셔서 감사합니다.
    • 포 맷
    • 2003.02.21 20:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 쁜지아빠
      2003.02.21 20:14
      맞습니다. aaa := True; 는 한번만 실행되고 aaa:=false; 는 스레드가 실행되는 동안 while구문을 돌면서 ...
    • 김대훈
    • 2003.02.21 19:59
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 머슴
      2003.02.21 20:31
      Count(*)의 반환값은 자료가 있던 없던  반드시 값을 가지고 있습니다.   따라...
    • 신정호
      2003.02.26 19:44
      values넣고 돌리니 돌아가네요.. Sql.Add('Insert into Teltem  => Sql.Add('Insert into ...
    • 이병훈
      2003.02.21 23:00
      안녕하세요. 훔. 될것 같은데 안되나여? 제가 지금 테스트 할수 있는 것이 없어서 그냥 sql/plus에...
    • 이정은
    • 2003.02.21 18:53
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 한원희
      2003.02.21 20:30
      안녕하세요. 한원희입니다. 아마도 델파이 버전차가 아닌가 합니다. 설치하신 패키지는 델파이 5용인것...
    • 이정은
      2003.02.21 20:56
      답변 감사합니다..(__) 전 델파이 5를 사용하고 있습니다...
    • 2003.04.26 22:25
      공백이 없는경우엔 어쩔수 없네요... 기냥 라벨써써 길이를 잘라서 했습니다. 이 방법이 보기엔 더 깔...
    • 박홍재
      2003.02.21 19:34
      안녕하세요. 혹시 QRDBTEXT의 Hight는 확인을  해 보셨는지요. Autosize 가 False이면 사이즈 ...
    • 2003.02.22 09:12
      글도 이상케 안되네여.. 저도 그게 이상해서리. 그래서 컴퍼넌트소스를 수정해야되나.... 도와주세요. ...
    • 2003.02.21 12:26
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이추형
      2003.03.06 23:02
      =>사용할때만 네트웍을 연결해 쓰고 끊는 방식입니다. 말씀하신 내용은 서버설정에 connection time...
    • 진돌
    • 2003.02.21 08:17
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 정성헌
    • 2003.02.21 07:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한원희
      2003.02.21 18:52
      안녕하세요. 한원희입니다. B폼을 생성하고, 표시할 때, 모달 대화상자로 표시하면, 입력이 끝날때까지 ...
    • bonds
    • 2003.02.21 06:06
    • 1 COMMENTS
    • /
    • 0 LIKES
    • bonds
      2003.02.21 11:24
      XP ServicePack1과 delphi7과의 문제가 아니라 Adobe Acrobat(Reader아님)과의 문제입니다. acrobat을 ...
    • 쁜지아빠
      2003.02.21 21:23
      흐으..이거 보니깐 TComponent형을 Create함수의 파라메터로 넘겨줘야 하는데 이것은 곧 폼이 아닌 곳에서...
    • zebra
    • 2003.02.21 03:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한원희
      2003.02.21 21:39
      안녕하세요... 한원희입니다. UpDown 컴포넌트의 OnChangingEx 이벤트에서 위로 눌렸는지 구분할 수 있...
    • 윤원진
    • 2003.02.21 03:13
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 윤승환
      2003.02.21 07:01
      공통점 -Win32 API 를 기반으로 하는 윈도우 개발툴이다 -OOP를 지원한다 -통합 IDE를 제공한다 ...
    • Galaxy
      2003.02.21 19:26
      서너개 밖에는 몰랐는데.... 많이 알게되어 감사 드립니다.
    • 구창민
      2003.02.21 19:04
      이걸 직접 기술하셨나여? 놀랍네여..^_^;