CREATE PROCEDURE Pname(in_Tid IN VARCHAR2,in_IP IN VARCHAR2,outstaticip OUT VARCHAR2,outcount OUT NUMBER)
AS
BEGIN
select STATIC_IP into outstaticip from OP_TTER_MAPPING where TERMINAL_ID = in_Tid;
if in_IP = outstaticip then
return 1;
else
select COUNT(*) into outcount from OP_TTER_MAPPING where DYNAMIC_IP_LOW <= in_IP AND DYNAMIC_IP_HIGH >= in_IP AND TERMINAL_ID = in_Tid;
if outcount = 1 then
return 1;
else
return 0;
end if;
end if;
END;
- Có thể sử dụng trở lại trong quy trình được lưu trữ như trên không?
- Nếu chúng ta có thể sử dụng lại, làm thế nào tôi có thể nhận được rằng giá trị trả về trong
Executesql("begin Pname(----)END")
phương pháp
EDITCó thể sử dụng "return" trong thủ tục lưu sẵn không?
Bây giờ tôi thay đổi nội dung giá trị trả về của tôi trong thủ tục lưu trữ như thế này, tôi làm việc đó phải không?
CREATE PROCEDURE P_ValidateTIDIP(in_Tid IN VARCHAR2,in_IP IN VARCHAR2,outstaticip OUT VARCHAR2,outcount OUT NUMBER,outretvalue OUT NUMBER)
AS
BEGIN
select STATIC_IP into outstaticip from OP_TTER_MAPPING where TERMINAL_ID = in_Tid;
if in_IP = outstaticip then
outretvalue:=1;
else
select COUNT(*) into outcount from OP_TTER_MAPPING where DYNAMIC_IP_LOW <= in_IP AND DYNAMIC_IP_HIGH >= in_IP AND TERMINAL_ID = in_Tid;
if outcount = 1 then
outretvalue:=1;
else
outretvalue:=0;
end if;
end if;
END;
@ user1799114: Chưa được định dạng, khó phân giải. Nhưng trông OK như bạn dường như chỉ định các giá trị trong các biến OUT. Câu hỏi là gì? –
Hi yogendra singh, tôi đã chỉnh sửa đoạn mã trên, tôi có đang làm đúng cách không ???? – user1
@ user1799114: Tôi ở đây. Câu hỏi là gì? –