执行查询时 ORACLE 出错

ERROR IN ORACLE WHILE EXECUTING QUERY

我正在尝试执行以下查询并尝试在变量中获取输出。

DECLARE LATESTID INT
SELECT LATESTID := ID FROM Cust_RectifiedDetails WHERE CustNo = UNIFIEDCUSTOMERNO
ORDER BY ID DESC

但是在执行时出现以下错误:

ORA-24344: success with compilation error
PLS-00103: Encountered the symbol "LATESTID" when expecting one of the following:

   := . ( @ % ; not null range default character

请指导我 此致

使用 SELECT INTO 完成 试试这个:

BEGIN
   SELECT ID INTO LATESTID  FROM Cust_RectifiedDetails WHERE CustNo = UNIFIEDCUSTOMERNO
END;

不要忘记 BEGIN 和 END; INT

后的子句和分号

DECLARE 部分之后,您需要一个 BEGIN

此外,INT 后的分号丢失。

您不能在带有 := 的 select 语句中赋值。请改用 select into

最后,当你 select into 时,order by 毫无意义。你可能想抓住 too_many_values。或者,您可能想尝试 max() 或其任何派生词。

declare
  latestid int;

begin

  select id into latestid
   from  cust_rectifieddetails
   where custno = unifiedcustomerno;

exception when to_many_values then
-- Do what you need to do.
   raise;

end;