【发布时间】:2016-05-29 03:48:03
【问题描述】:
如果我有这样的 PL SQL 过程:
Create Or Replace Procedure get_age (first_name varchar(40), last_name varchar(50))
Begin
Select age
From Person
Where first = first_name AND last = last_name;
End;
不保证用户会传入first_name 和last_name 变量的值。
如果其中一个变量没有值,我不希望在我的查询的Where 子句中出现first_name 或last_name,我该如何在上述过程中说明这一点。
【问题讨论】:
-
我认为这不是您拥有的实际代码。参数没有长度,过程中的
select必须有into,否则必须使用它来打开游标。如果你只是检索一个值,你会想要一个函数而不是一个过程。如果任一参数是可选的,您可以获得多行,那么您希望发生什么?