Oracle SQL开发人员:是否可以将参数传递给SQL脚本?

Oracle SQL开发人员:是否可以将参数传递给SQL脚本?,sql,oracle-sqldeveloper,Sql,Oracle Sqldeveloper,我有以下SQL脚本(所有名称都替换为元语法变量): 当我在SQL Developer中运行它时,正如预期的那样,我得到了以下错误:SQL错误:索引处缺少in或OUT参数::1 SQL Developer中是否有方法将测试参数传递给这些值(在这种情况下,BAR,BAZ,QUX,QUX,以及CORGE),或者我必须手动替换问号?谢谢 更新:我一直在网上寻找答案,但运气不好;我找到的所有文章都没有涉及FOO=?语法。我知道这是从Java程序访问(在本例中是从中删除)数据库的正确语法,但我想在将SQL脚

我有以下SQL脚本(所有名称都替换为元语法变量):

当我在SQL Developer中运行它时,正如预期的那样,我得到了以下错误:
SQL错误:索引处缺少in或OUT参数::1

SQL Developer中是否有方法将测试参数传递给这些值(在这种情况下,
BAR
BAZ
QUX
QUX
,以及
CORGE
),或者我必须手动替换问号?谢谢


更新:我一直在网上寻找答案,但运气不好;我找到的所有文章都没有涉及
FOO=?
语法。我知道这是从Java程序访问(在本例中是从中删除)数据库的正确语法,但我想在将SQL脚本嵌入程序之前测试它。

这样的查询称为预处理语句。它用于将SQL语句从程序发送到数据库

首先必须准备prepared statement对象,然后提供参数,最后执行语句。设置参数时,请按照每个问号在语句中出现的顺序引用它们。在你们的例子中,BAR是参数1,CORGE是参数5

根据我的经验,测试这样的查询是毫无用处的。如果测试时更方便,您可以将参数更改为变量,甚至替换变量

DELETE FROM FOO
WHERE UPPER(BAR)=? AND UPPER(BAZ)=? AND UPPER(QUX)=? AND UPPER(QUUX)=? AND UPPER(CORGE)=?;