Q&A

  • [질문}저장프로시저 문제.. [Please]
안녕하세요

저장 프로시저 문제 때문에 글을 올렸습니다.

우선 서버DB 는 SQL7.0 이고요 delphi5.0 으로 프로그램을 만들고 있어요...

서버접속을 TDataBase로 연결했구요...

서버에서 StoredProce 를 TDataBase 에 연결해서 저장프로시저를 쓸려고 하는데..

에러가 나는군요...

저가 저장 프로시저는 처음쓰는것이라 말이지요...

우선 소스 올립니다.

저장프로시저

-----------------------------------------

CREATE PROCEDURE SP_User1

@iJob char(1),

@DbLogin_1 varchar(10), -- login

@DbPass_2 varchar(10), -- pass

@CcName_3 varchar(20), -- name

@Permission_4 char(1) -- 권한



AS



BEGIN

IF @iJob = 'I' GOTO pInsert -- 입력

IF @iJob = 'U' GOTO pUpdate -- 수정 처리

IF @iJob = 'D' GOTO pDelete -- 삭제 처리

RETURN



/*-------*/

pInsert:

/*-------*/



INSERT INTO OdUser(DbLogin,DbPass,CcName,Permission)

VALUES (@DbLogin_1,@DbPass_2, @CcName_3,@Permission_4)

GOTO pExit





/*-------*/

pUpdate:

/*-------*/

UPDATE OdUser

SET DbLogin = @DbLogin_1,

DbPass = @DbPass_2,

CcName = @CcName_3,

Permission = @Permission_4

WHERE DbLogin = @DbLogin_1



GOTO pExit





/*-------*/

pDelete:

/*-------*/



DELETE FROM OdUser WHERE DbLogin = @DbLogin_1

GOTO pExit





/*----*/

pExit:

/*----*/



RETURN



END



/*---------------------( THE END )---------------------------*/

입니다.

그다음 클라이언트 소스

procedure TF_User.SpeedButton5Click(Sender: TObject);

begin

DM.st_P.Params[1].Asstring := 'I';

DM.st_P.Params[1].Asstring := 'EId';

DM.st_P.Params[2].Asstring := 'Epass';

DM.st_P.Params[3].Asstring := 'Euser';

DM.st_P.Params[4].Asstring := 'U';

DM.st_P.Prepare;

DM.st_P.ExecProc;

end;

인데...

이상하게 에라가 나요...

아시는 분 가르쳐 주시면 감사하겠습니다.

다른 분들이 ADOStoredProc 를 사용하라고 하는데...

잘 안되어서요...

TDataBase 에 TStoredProc 를 연결해서 저장 프로시저를 사용하는 방법을 아시는 분 많은 조언 부탁드립니다.

꼭 아시는 분 부탁드립니다.



0  COMMENTS