在我尝试使用该行编辑过程时
CREATE OR DROP PROCEDURE
Run Code Online (Sandbox Code Playgroud)
我创建了两个同名的程序,如何删除它们?
每当我尝试删除它时收到的错误是
对例程 BT_CU_ODOMETER 的引用没有签名,但该例程在其模式中并不唯一。SQL状态=42725
我正在使用 DB2
假设这是 DB2 for LUW。
DB2 允许您“重载”具有相同名称但参数数量不同的过程。每个过程都有一个特定的名称,该名称可以由您提供或由系统生成,并且是唯一的。
要确定过程的具体名称,请运行
SELECT ROUTINESCHEMA, ROUTINENAME, SPECIFICNAME FROM SYSCAT.ROUTINES
WHERE ROUTINENAME = 'BT_CU_ODOMETER'
Run Code Online (Sandbox Code Playgroud)
然后您可以单独删除每个过程:
DROP SPECIFIC PROCEDURE <specific name>
Run Code Online (Sandbox Code Playgroud)