Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在oracle数据库中编写参数化查询_Sql_Oracle_Testing - Fatal编程技术网

Sql 如何在oracle数据库中编写参数化查询

Sql 如何在oracle数据库中编写参数化查询,sql,oracle,testing,Sql,Oracle,Testing,我有一个基本要求,需要使用相同的参数多次查询数据库 i、 e 在这里,我想要一些东西,我可以声明变量并分配值1,2,3,4,5,而不是再次更改值,只需要更改变量值 类似于 Select * from Table1 where ID1 in (x,y,z,a,b); 它可能会为您提出一个非常基本的问题,但可以节省我大量的返工 我想你可能在找这样的东西 Select * from Table1 where ID1 in ('" & variable1 & "', '"

我有一个基本要求,需要使用相同的参数多次查询数据库 i、 e

在这里,我想要一些东西,我可以声明变量并分配值1,2,3,4,5,而不是再次更改值,只需要更改变量值

类似于

Select * from Table1 where ID1 in (x,y,z,a,b);

它可能会为您提出一个非常基本的问题,但可以节省我大量的返工

我想你可能在找这样的东西

Select 
   * 
from Table1 
where ID1 in ('" & variable1 & "', '" & variable2 & "' ) ;

我想你可能在找这样的东西

Select 
   * 
from Table1 
where ID1 in ('" & variable1 & "', '" & variable2 & "' ) ;

在SQL*Developer中,将它们作为绑定变量编写,如下所示(例如):

SQL*Developer将看到冒号并识别绑定变量,并提示您输入值

它将在下次看到该值时记住该值,即使是在不同的查询中。每次仍会提示您,但将填写您使用的最后一个值

如果要以编程方式指定变量值,可以使用以下方法:

VARIABLE var1 NUMBER;

exec :var1 := 15;

SELECT count(*) FROM dba_objects WHERE rownum <= :var1;

SELECT count(*) FROM dba_views WHERE rownum <= :var1;
变量var1号;
exec:var1:=15;

从SQL*Developer中rownum所在的dba_对象中选择count(*),将其作为绑定变量写入,如下所示(例如):

SQL*Developer将看到冒号并识别绑定变量,并提示您输入值

它将在下次看到该值时记住该值,即使是在不同的查询中。每次仍会提示您,但将填写您使用的最后一个值

如果要以编程方式指定变量值,可以使用以下方法:

VARIABLE var1 NUMBER;

exec :var1 := 15;

SELECT count(*) FROM dba_objects WHERE rownum <= :var1;

SELECT count(*) FROM dba_views WHERE rownum <= :var1;
变量var1号;
exec:var1:=15;

从dba_对象中选择count(*),其中rownum您使用什么来执行这些查询?如果不定义您正在使用的内容(例如,哪种查询工具,或哪种编程语言等),这就太宽泛了,无法正确回答。嘿,我使用SQL developer来简单地查询oracle数据库,我的要求是比较每个表中的行以获得给定的值。您使用什么来执行这些查询?如果不定义您正在使用的内容(例如,哪种查询工具,或哪种编程语言等),这就太宽泛了,无法正确回答。嘿,我使用SQL developer只是查询oracle数据库,我的要求是比较每个表中的行以获得给定的值,类似的东西..如何在sql developer中定义这些变量,我们可以在整个工作区中使用这些变量吗?我想你需要一种编程语言来定义这些变量,除非Mathew给出的答案是你想要的。一个简单的脚本示例可以帮助我是的,类似的东西..如何在sql developer中定义这些变量,我们可以在整个工作区中使用这些变量吗?我认为您需要一种编程语言来定义这些变量,除非上面Mathew分享的答案是你想要的。一个简单的脚本示例可以帮助mesorry解决这个愚蠢的问题,但不能像define x=1;?那样为x赋值@你可以,是的-看看这个问题。很抱歉提出了一个愚蠢的问题,但不能像定义x=1;??那样为x赋值@你可以,是的-看看这个问题。
VARIABLE var1 NUMBER;

exec :var1 := 15;

SELECT count(*) FROM dba_objects WHERE rownum <= :var1;

SELECT count(*) FROM dba_views WHERE rownum <= :var1;