在pl sql中读取包过程中的文件

在pl sql中读取包过程中的文件,sql,oracle,plsql,oracle11g,oracle-sqldeveloper,Sql,Oracle,Plsql,Oracle11g,Oracle Sqldeveloper,我试图在Pl Sql过程中读取一个文本文件,但没有用——似乎是语法错误。我做错了什么?我的怀疑是我没有宣布我应该在哪里。以下是包体的第一条路径: CREATE OR REPLACE PACKAGE BODY COP_DBO.PACKAGE_TEMPLATE AS -- --***************************************************************************************************** --

我试图在Pl Sql过程中读取一个文本文件,但没有用——似乎是语法错误。我做错了什么?我的怀疑是我没有宣布我应该在哪里。以下是包体的第一条路径:

CREATE OR REPLACE PACKAGE BODY COP_DBO.PACKAGE_TEMPLATE

 AS
  --
  --*****************************************************************************************************
  -- Purpose: Just a template
  --
  -- Inputs:
  --      in_vSTR    String
  --
  -- Returns:
  --      None
  --
  -- Mod History:
  --      06/29/2016 KEvin Palmer - Created initial version of this procedure
  --
  -- Error Handling:
  --      An error is raised if errors are encountered building or executing the SQL.
  --
  --*****************************************************************************************************
f UTL_FILE.FILE_TYPE;
s VACHAR2(200);
BEGIN
f := UTL_FILE.FOPEN('\\sp0034avrt\winixdb$\cow\dev', 'certs_file.txt', 'R');

UTL_FILE.GET_LINE(f,s);

UTL_FILE.FLCOSE(f);

dbms_outpit.put_line(s);
end;




  sql_statments arr_sql_t := arr_sql_t(); --initialize a empty lis 
  --------------------------------------------------------------------------------
  /*                    PROCEDURE AND VARIABLE 
                        INITILIZATION FOR  COW_DATALOAD_V2
  /***************************************************************************/
  ------------------------------------------------------------------------------
  --*********** PUT YOUR LIST OF CERTS BELOW ******************

  v_certList arr_claims_t := arr_claims_t('3803617642',
                                          '3805126441',
                                          '3876849047',
                                          '3873116383',
                                          '3873306670',
                                          '3878876718');

  --COP VARIABLES---
  new_copId   NUMBER; --NEW COP ID 
  prod_copId  NUMBER; --PROD COP ID
  new_seq_id  NUMBER; --NEW SEQ ID  
  suppl_count NUMBER; --supplemental count

  v_SQL     VARCHAR2(7000);
  v_certLst VARCHAR2(2000);
  n_success NUMBER := 0; --Count of success found
  n_total   NUMBER := 0; --Total Records proccessed
  n_suppl   NUMBER := 0; --Total Records proccessed
  n_orders  NUMBER := 0; --Total lmso orders downloaded

  /*cop procedure*/
  PROCEDURE COP_DATALOAD_V2(arr_claims arr_claims_t,
                            arr_sql    arr_sql_t) AS
  BEGIN
开始之后,我有两个程序。文件结束后的所有内容都会突出显示,并带有某种语法错误。我做错了什么


编辑:这个问题怎么会是另一个问题的重复?我看不出来。很抱歉,如果这是显而易见的。我看不出有什么相似之处

典型的包体声明如下所示

create or replace package body package_name is

  var_name number;

  procedure proc_name is
  begin
    do_smth;
  end;

begin
   init_smth;
end ;
变量、方法、初始化。在您的代码中,则相反:

create or replace package body package_name is

  var_name number;

begin
   init_smth;
end ;

  var_name2 number;

  procedure proc_name is
  begin
...

变量,初始化,变量,方法。看起来你应该把代码放在正确的地方

你有一些明显的拼写错误。只需查看编译器告诉您的行号并修复这些单词(VACHAR;FLCOSE等)。另一个输入错误-dbms_outpit而不是dbms_output我修复了这些错误的可能重复项,但现在它无法识别该过程。表示这是一个无效语句。此外,为什么编译器不指出这些拼写错误?我在用蟾蜍。它给我的所有错误几乎都是完全错误的!