sql - 为什么 oracle 过程无效

标签 sql oracle ora-06550

有人可以向我解释为什么我在以下简单过程中不断收到此 PLS-00905 错误吗?谢谢。

create or replace procedure copy_table(
    table_name IN varchar2, 
    database_link IN varchar2, 
    suffix IN varchar2, 
    table_owner IN varchar2)
IS
begin
    execute immediate 'create table ' || table_name || '_' || suffix || 
    ' as select * from ' || table_owner || '.' || table_name || '@' || database_link ;
end;
/


SQL> execute myschema.copy_table;
BEGIN myschema.copy_table; END;
              *
ERROR at line 1:
ORA-06550: line 1, column 15:
PLS-00905: object myschema.copy_table is invalid
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

最佳答案

去掉尾部的斜杠——这是为了 SQLPlus 命令终止

关于sql - 为什么 oracle 过程无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3981957/

相关文章:

SQL Server 从大表中选择速度慢

mysql - 在 MySQL 中使用 IF ELSE 条件更新同一个表

php - 如何在sql中过滤大于当前日期的数据?

sql-server - Oracle 数据库表到 SQL Server 数据库表

oracle - Oracle存储过程的挑战

MySQL FROM语句错误: FROM is not a valid input at this position

oracle - PL/SQL : Procedures Successful with compilation error

sql - 如何知道 MATERIALIZED VIEW 更新是否正在运行?

c# - 使用 "Oracle.DataAccess"(带参数)在 C# 中调用 Oracle 存储过程

sql - Oracle 同义词问题