CREATE PROCEDURE PROC_CAL ( @operand_a int , @operand_b int ) AS -- 내부 변수 선언 DECLARE @sum int DECLARE @minus int DECLARE @mul int DECLARE @division int DECLARE @bool INT = ISNUMERIC(@operand_a) -- 중복 데이터 검사 IF EXISTS(SELECT * FROM calculator WHERE operand_a = @operand_a and operand_b = @operand_b) BEGIN EXEC PROC_CAL_SELECT @operand_a, @operand_b RETURN END ELSE BEGIN BEGIN TRY BEGIN TRAN -- 각 각의 계산 프로시저 수행 후 내부 변수에 할당 EXEC @sum = PROC_CAL_SUM @operand_a, @operand_b EXEC @minus = PROC_CAL_MINUS @operand_a, @operand_b EXEC @mul = PROC_CAL_MUL @operand_a, @operand_b EXEC @division = PROC_CAL_DIVISION @operand_a, @operand_b -- 삽입 후 조회 EXEC PROC_CAL_INSERT @operand_a, @operand_b, @sum, @minus, @mul, @division EXEC PROC_CAL_SELECT @operand_a, @operand_b COMMIT TRAN END TRY BEGIN CATCH ROLLBACK TRAN SELECT ERROR_MESSAGE(); END CATCH END
여기서 입력값이 숫자가아닌 문자가 들어오면 예외처리하는 방법을 모르겠습니다.