用新供应商替换旧供应商
Posted
技术标签:
【中文标题】用新供应商替换旧供应商【英文标题】:Replacing an old supplier with new 【发布时间】:2015-10-08 01:53:28 【问题描述】:我和一个朋友一直在研究这个,基本上它应该确定新旧供应商 ID 是否退出。最终的结果将是采用旧的供应商 ID 并将其替换为新的。在现实世界中,您将不再使用供应商并用您使用的供应商替换它们。该脚本对我来说看起来不错,但我一直在光标选择下看到一条黄线。
CREATE OR REPLACE FUNCTION EX5B_SUPPLIER_EXIST
(
OLD_SUPPLIER_ID IN VARCHAR2
, NEW_SUPPLIER_ID IN VARCHAR2
) RETURN boolean AS
cursor supplier_cursor is
select count(*),
(select count(*)as
from supplier
where supplier_id=new_supplier_id)+1 as new_id
from supplier
where supplier_id =old_supplier_id
group by supplier_id;
supplier_row supplier_cursor%rowtype;
BEGIN
open supplier_cursor;
fetch supplier_cursor into supplier_row;
if supplier_row.new_id > 1 then
return true;
else return false;
end if;
close supplier_cursor;
END EX5B_SUPPLIER_EXIST;
【问题讨论】:
我忘了提,但它确实可以编译。 黄线在您的环境中意味着什么?在您的查询中,“as”出现在“count(*)”之后,根本没有别名.. 运行函数时会发生什么?这是预期的吗? (我假设您没有要求删除黄线)。 【参考方案1】:尝试在 count(*) 之后删除 as。但是保持 as 不会产生任何问题。
【讨论】:
以上是关于用新供应商替换旧供应商的主要内容,如果未能解决你的问题,请参考以下文章
橡胶行业SRM供应商管理平台助力橡胶企业破局立势,实现精益管理