대표적인것이 사용자 정보의 비밀번호 인데...
일반적으로 비밀번호는 사용자 정보 수정 시, 해당 칸에 나타나지 않게 빈칸으로 처리한다.
여기서, 비밀번호 칸에 특정 비밀번호를 넣고 업데이트를 하면 그 비밀번호로 변경을 하게하고, 비밀번호 칸에 아무것도 입력하지 않고, 그냥 업데이트를 하면 비밀번호는 그대로 유지 한채 다른 정보만 업데이트 하게 하는 것이다.
그냥 업데이트를 해버리면, 빈칸으로 업데이트시 비밀번호가 없어지므로 비밀번호가 입력되었을 때와 입력되지 않았을때로 구분 하여 처리해야 한다.
이 때, 쿼리를 2개로 만들지 않고 하나의 저장 프로시저로 처리하는 방법...
UPDATE T_MEMBER_LIST SET strLoginPwd = case @strLoginPwd when '' then strLoginPwd else @strLoginPwd end, strLoginName = @strLoginName, . . . Where strLoginId = @strLoginId
이렇게 "Case When" 문을 이용하여 있으면 그 값을 업데이트 하고, 입력된 값이 없으면 자기 자신을 업데이트 하게 하면 된다.