将 SQL 转换为 Oracle 设置参数 [重复]

Posted

技术标签:

【中文标题】将 SQL 转换为 Oracle 设置参数 [重复]【英文标题】:coverting TSQL to Oracle setting parameters [duplicate] 【发布时间】:2020-02-12 22:37:42 【问题描述】:

我开始了一份新工作,需要为这份工作学习 Oracle。我正在尝试转换这个简单的代码,以便以后可以构建更复杂的查询

声明@NPI = VARCHAR(20)

SET @NPI = '123456789'

选择 *

来自隶属关系

在哪里 NPI = @NPI

我想弄清楚在 Oracle 中设置参数,然后在 WHERE 语句或代码中的其他位置使用它们。

我想我已经解决了部分问题,但不确定完全转换

DECLARE NPI1 varchar(20):= '123456789'

我希望设置验证/参数并稍后在代码中使用它们。是的,我在这个查询中不需要它,但如果我知道如何将它用于查询,我可以构建更复杂的 Oracle 查询。

【问题讨论】:

【参考方案1】:

使用bind variable:

VARIABLE npi VARCHAR2(20);

然后使用PL/SQL来设置它的值:

BEGIN
  :npi = '1234567890';
END;
/

EXEC:

EXEC :npi = '1234567890';

然后您可以在查询中使用它:

SELECT *
FROM   AFFILIATION
WHERE  NPI = :npi

【讨论】:

以上是关于将 SQL 转换为 Oracle 设置参数 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

SQL Plus 将字符转换为字节以用于 Oracle 复制命令

SQL 检索 Oracle 函数参数 [重复]

如何在过程oracle中将表名设置为参数

oracle时间戳6转换为sql server datetime2错误

将 oracle.sql.ARRAY 传递给 PL/SQL 过程时设置时区

在 SQL 中将数字转换为单词 [重复]