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

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

안녕하세요.

 

프로시저 문에 대한 문의가 있습니다.

 

아래는 트랜젝션 부분인데.

 

insert 문과 delete 그리고 다시 insert를 처리해야 합니다.

 

이러한 쿼리문 중 하나라도 오류가 뜨면 전부다 롤백을 해야 하는데;;

 

도통 해결이 되지 않아 며칠을 고민하다 문의드립니다.

 

일부로 마지막 insert문에서 에러가 뜨도록 파라메터를 날렸고 당연히 앞의 insert와 delete가 롤백이 될지 알았는데 ㅠㅠ

 

실행이 되어버립니다.

 

DB는 약해서 해결법이나 힌트 좀 알려주시면 감사하겠습니다. 프로그램 업데이트를 못하고 있습니다 ㅠㅠ 

 

BEGIN tran test1
 declare @result int
 set @result = 0
 SET NOCOUNT ON;
 insert into HANON_LOT_PRESS select head_qr , head_date , head_num , head_flow , head_model , hn_date , hn_time , hn_num , hn_model from HANON_PRESS where head_qr = @qrcode //insert 성공여부
 if(@@Error = 0 and @@rowcount > 0)
   begin
   delete from hanon_press where head_qr = @qrcode //insert 성공시
     if(@@Error = 0 and @@rowcount > 0) //delete 성공여부

    begin
   insert into hanon_lot_test values(@qrcode , '11' , '11' , '11' , '11' , '111' , '11' , '11' , @hn_model)//delete 성공시
    if(@@Error = 0 and @@rowcount > 0)
    begin
    set @result = 1 
    select @resultp = @result //최종 반영 여부 return
    return
    end
    else
       begin
       rollback tran test1//마지막 insert 실패시 롤백
       end
    end
     else
    begin
    rollback tran test1//delete 실패시 롤백
    end 
   end
 else
   begin
   select @resultp = @result //첫 insert 오류시 반영 여부 return
   return
   end
  
commit tran test1

No. Subject Author Date Views
9922 함수 먹힌 column 에 인덱스 추가하는방법? [2] 노잼호 2017.07.13 2603
9921 like에 대해서..? [4] 문상연 2017.07.13 2494
9920 postgresSQL 다중 행 쿼리질문(내용수정) [3] 궁금해서알고싶어요 2017.07.11 1936
» 프로시저내 트랜젝션 문의드립니다. [2] 톡히슈터 2017.07.10 2498
9918 2005에서 2008로 업그레이드 하려고 합니다. 엘제이 2017.07.10 2574
9917 뜬금없이MSSQL이실행중이나 실행이 안됩니다. [1] 김영환_281520 2017.07.10 4223
9916 SQL 쿼리 질문(동적쿼리) [2] SQL입문도못한자 2017.07.07 2224
9915 SQL Server 에이전트 [2] 기타치는퐝동 2017.07.07 3240
9914 쿼리 질문입니다 [1] 문상연 2017.07.06 3863
9913 mssql sysadmin 권한 관련 확인요청 드립니다. 제비 2017.07.06 3788
9912 쿼리 질문입니다! [2] 파란약 2017.07.05 3118
9911 메모리 TEMPDB 문의 [1] MSG 2017.07.05 1965
9910 쿼리좀 여쭤 볼게요. [5] 죠리퐁 2017.07.05 2982
9909 linked server가 무슨 계정으로 설정되어 있는지 [1] 이시우_301202 2017.07.05 2972
9908 데이터 가져오기 및 내보내기 마법사에서 [2] 푸르네 2017.07.04 2825
9907 MS-SQL 책 추천 부탁 드립니다. [1] 데이비드백곰 2017.07.04 3310
9906 insert 프로시저 사용시, 오류내용과 반환값을 설정하는 방법좀알려주세요 [1] mssl왕초초초보 2017.07.03 3112
9905 sql 서버 미러링 구성에 관한 질문 입니다. icham 2017.07.01 2525
9904 답변을 아이디별로 표시학고 싶습니다 [3] 문상연 2017.06.30 2522
9903 윈도우 암호 변경후 복제 상태보기 오류 메시지 thrill 2017.06.29 4461





XE Login