问题描述
我想在何时致电验证 查询返回至少一行,例如(从id = 1的表中选择1) 和 当请求“ add_data”被调用
在这里不知道要选择什么:
解决方法
根据我的理解,add_data
请求与您按下的按钮有关。如果是这样,那么-如果您什么都不做,则请求名称等于按钮名称-因此,我们假设按钮名称为ADD_DATA
。因此:
- 在“按下按钮时”属性中,选择按钮的名称(
ADD_DATA
,对吧?) - 在“条件类型”中选择您提到的条件(“ SQL查询返回至少一行”)
可以通过绑定变量REQUEST
访问request的值。要解决您的特定问题,您可以将其添加到“行退回”类型的条件中,如下所示:
SELECT 1
FROM table
WHERE (
id = 1 AND
:REQUEST = 'add_data'
)
如果您更喜欢pl / sql,则可以将条件类型为“ PL / SQL Function Body”,其代码如下:
DECLARE
l_dummy NUMBER;
BEGIN
-- quit here if request value doesn't match
IF :REQUEST != 'add_data' THEN
RETURN false;
END IF;
-- check if we have rows in table.
BEGIN
SELECT 1
INTO l_dummy
WHERE EXISTS (select 1 from table where id = 1)
EXCEPTION WHEN NO_DATA_FOUND THEN
RETURN false;
END;
RETURN true;
END;
这是更多代码,但是您会发现它更易于阅读,这对以后的维护很有帮助。