데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

연결된 tblUser와 tblLogin이라는 테이블이 있고 로그인시 tblUser의 login컬럼과 tblLogin의 status 컬럼을 업데이트하는 프로시저를 만들어 봤습니다.. 문제는 실행은 이상없이 되는데 업데이트를 성공해도 업데이트를 수행한 행이 없다는 returnCode -14를 출력하는데요 어디서 잘못된 걸까요 ㅠ

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


ALTER PROCEDURE [dbo].[uspUserUpatelogin]
@id VARCHAR(32)
,@passwd VARCHAR(32)
,@resultCode INT = -1 OUTPUT
AS
BEGIN
DECLARE @userPWTemp VARCHAR(32) = (SELECT passwd FROM tblUser WHERE userId=@id)
DECLARE @userIdxTmp INT = (SELECT useridx FROM tblUser WHERE userId=@id)
DECLARE @loginSTATUSTmp VARCHAR(1) = (SELECT loginstatus FROM tblLogin WHERE useridx=@userIdxTmp)  
--아이디가 없을 때
SELECT userId FROM tblUser WHERE userId=@id
IF @@ROWCOUNT = 0
BEGIN
SET @resultCode = -11
RETURN
END
--패스워드가 틀릴 때
ELSE IF @passwd != @userPWTemp
BEGIN
--RAISERROR('아이디와 비밀번호가 일치하지 않습니다.', 16,1)
SET @resultCode = -12
RETURN
END
--이미 로그인 한 상태일 때
ELSE IF @loginSTATUSTmp = 'Y'
BEGIN
SET @resultcode = -13
RETURN
END
ELSE
BEGIN TRY
BEGIN TRAN
UPDATE tblUser
SET lastlogin=getdate() 
WHERE userId=@id
UPDATE tblLogin 
SET loginstatus = 'Y' 
where useridx=@userIdxTmp
COMMIT TRAN
IF @@ROWCOUNT = 0
BEGIN
SET @resultCode = -14
RETURN
END
ELSE
BEGIN
SET @resultCode = 1
RETURN
END
END TRY
BEGIN CATCH
ROLLBACK TRAN
SELECT
ERROR_LINE() AS '오류발생 라인'
,ERROR_MESSAGE() AS '오류 메세지'
,ERROR_NUMBER() AS '오류 번호'
,ERROR_PROCEDURE() AS '오류 프로시저 이름'
,ERROR_SEVERITY() AS '오류 심각도'
,ERROR_STATE() AS '오류 상태';
SET @resultCode = -1
RETURN
END CATCH

END

No. Subject Author Date Views
9069 jsp에서 mssql2014 윈도우인증모드 접속시 에러 현상 깔샴이 2015.12.29 4642
9068 로그 쉬핑 복원 시간이 너무 오래 걸리고 있습니다. Robin 2015.12.29 2388
9067 프로시저 내의 업데이트가 동작을 하지 않는 이유가 궁금합니다. [1] 랑슈 2015.12.28 1834
9066 ROUND함수로 반올림후 0을 지우는 방법을 알고싶습니다. [1] sincie 2015.12.23 2082
9065 우편번호DB 데이터 가져오기 문제 더카니 2015.12.21 2926
9064 Tempdb속성질문입니다. 희망나라 2015.12.21 2104
9063 데이터베이스에서 페이징으로 가져오려할 때에 전체 갯수를 얻는 방법을 알고 싶습니다. [1] 동동7972 2015.12.19 2168
9062 트리거를 이용한 Update 책임자 찾기... [4] Larry 2015.12.18 3029
9061 클라이언트 맥주소 관련 질문입니다. 베이비2 2015.12.18 2735
9060 쿼리 관련 조언을 듣고 싶습니다. [1] 다복이 2015.12.18 2000
9059 이 문제 떄문에 탈모 일어 날 것 같습니다... [5] sql_machine 2015.12.16 2597
9058 SQL 초보 쿼리 질문 [3] cray 2015.12.16 2297
9057 2012 vs 2014 어떤게 좋을까요? [3] 허윤영_313720 2015.12.16 1973
9056 혹시 모델링 프로그램 중 DBDesigner 쓰시는 분 계신가요 sincie 2015.12.15 2376
9055 window 10 관련 재질문입니다. [1] 달님별님코자 2015.12.15 6646
9054 파생필드 수정 관련 [2] 돌돌이 2015.12.15 4728
9053 날짜표현 문의 [5] khaluamilk 2015.12.14 2434
9052 조건별 컬럼값 카운트 기능이 존재하는지요 [3] 스타카토 2015.12.14 2248
» 프로시저 에러에 관한 질문입니다. [1] sincie 2015.12.14 1916
9050 갑자기 Agent 작업이 실행이 안 되고 있습니다. 황성필_314612 2015.12.14 2056





XE Login