我对oracle有疑问,例如,如果您在oracle中有一个函数,那么该函数将接收一个整数参数。
功能测试(参数IN编号(
- 当我发送param=1->返回100
- 当我发送param=2->返回300
- 当我发送param=3->返回200
如果三个或三个以上的用户同时执行测试功能会发生什么,结果是什么?
用户1:
select test(1) from dual;
用户2:
select test(3) from dual;
用户3:
select test(2) from dual;
每个用户得到不同的结果?,尽管功能是在的同时执行
如果您有以下功能:
CREATE FUNCTION test ( param IN NUMBER ) RETURN NUMBER
IS
BEGIN
RETURN CASE param
WHEN 1 THEN 100
WHEN 2 THEN 300
WHEN 3 THEN 200
END;
END;
/
然后运行:
SELECT test(1),
test(2),
test(3)
FROM DUAL;
输出:
TEST(1(| TEST(2(|TEST(3(------:|------:|------100|300|200
如果您想设置计划作业,以便3个用户同时运行查询,那么您会发现结果是相同的,并且每个用户都得到不同的输出。
db<gt;小提琴这里