Oracle 删除客户的过程
我有以下步骤,应该删除特定客户。我不断地犯错误,我不知道为什么。我是新来的,这是一个班级作业 提前感谢您的帮助:Oracle 删除客户的过程,oracle,plsql,Oracle,Plsql,我有以下步骤,应该删除特定客户。我不断地犯错误,我不知道为什么。我是新来的,这是一个班级作业 提前感谢您的帮助: CREATE or REPLACE PROCEDURE DISP_CUST_DELETE (I_CUSTOMER_NUM IN CUSTOMER_NUM&TYPE) BEGIN DELETE FROM CUSTOMER WHERE CUSTOMER_NUM = I_CUSTOMER_NUM; dbms_output.put_line('
CREATE or REPLACE PROCEDURE DISP_CUST_DELETE (I_CUSTOMER_NUM IN CUSTOMER_NUM&TYPE)
BEGIN
DELETE
FROM CUSTOMER
WHERE CUSTOMER_NUM = I_CUSTOMER_NUM;
dbms_output.put_line('Customer has been deleted');
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('NO CUSTOMER WITH this number has been deleted');
END;
/
这里有一些更新。是的,对不起,这就是我的意思。以下是更新的程序
CREATE or REPLACE PROCEDURE DISP_CUST_DELETE (I_CUSTOMER_NUM IN CUSTOMER.CUSTOMER_NUM) AS
BEGIN
DELETE
FROM CUSTOMER
WHERE CUSTOMER_NUM = I_CUSTOMER_NUM;
dbms_output.put_line('Customer' || I_CUSTOMER_NUM ||'has been deleted');
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('NO CUSTOMER WITH'||I_CUSTOMER_NUM||'has been deleted');
END;
/
下面是我得到的错误:
0/0 PL/SQL:编译单元分析已于1/47终止PLS-00488:“CUSTOMER.CUSTOMER_NUM”必须是一个类型
就像注释中建议的
@sticky bit
,您的代码有语法错误。
为了将变量声明为与先前声明的变量或表列相同的类型,应使用table.table\u column%type
CREATE or REPLACE PROCEDURE DISP_CUST_DELETE (
I_CUSTOMER_NUM IN CUSTOMER.CUSTOMER_NUM%TYPE --> This line here
) AS
BEGIN
DELETE
FROM CUSTOMER
WHERE CUSTOMER_NUM = I_CUSTOMER_NUM;
dbms_output.put_line('Customer' || I_CUSTOMER_NUM ||'has been deleted');
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('NO CUSTOMER WITH'||I_CUSTOMER_NUM||'has been deleted');
END;
/
就像注释中建议的
@sticky bit
,您的代码有语法错误。
为了将变量声明为与先前声明的变量或表列相同的类型,应使用table.table\u column%type
CREATE or REPLACE PROCEDURE DISP_CUST_DELETE (
I_CUSTOMER_NUM IN CUSTOMER.CUSTOMER_NUM%TYPE --> This line here
) AS
BEGIN
DELETE
FROM CUSTOMER
WHERE CUSTOMER_NUM = I_CUSTOMER_NUM;
dbms_output.put_line('Customer' || I_CUSTOMER_NUM ||'has been deleted');
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('NO CUSTOMER WITH'||I_CUSTOMER_NUM||'has been deleted');
END;
/
您遇到了什么错误?您所说的
CUSTOMER\u NUM&TYPE
可能是指CUSTOMER.CUSTOMER\u NUM%TYPE
?请更新问题,不要在其他评论中。注释未格式化。现在您只有CUSTOMER.CUSTOMER\u NUM
而不是CUSTOMER.CUSTOMER\u NUM%TYPE
。在末尾添加%TYPE
…非常感谢,我使用了&而不是%。现在它起作用了。你们都很棒,特别是有点粘。你们都犯了什么错误?你们说的CUSTOMER\u NUM&TYPE
可能是指CUSTOMER.CUSTOMER\u NUM%TYPE
?请更新问题,不要在其他评论中。注释未格式化。现在您只有CUSTOMER.CUSTOMER\u NUM
而不是CUSTOMER.CUSTOMER\u NUM%TYPE
。在末尾添加%TYPE
…非常感谢,我使用了&而不是%。现在它起作用了。你们都很棒,特别是有点粘。