将文本文件导入 Oracle 的存储过程

Stored Procedure to import text file into Oracle

我有一个文本文件,我必须对照 Oracle 中的主数据库检查是否重复,每天 3 次。过去我只会为此创建一个 SSIS 包,但不幸的是,我现在正在与 Oracle 打交道,我对 Oracle 知之甚少。我已经搜索了好几天,我能想到的最佳解决方案是创建一个 Sql 加载程序,但我不知道如何将其放入存储过程中。

此外,我的文本文件没有格式化,所以我必须按位置获取前两个字段并忽略该行中的其余数据。

任何建议。我很茫然,任何帮助将不胜感激。

这是我到目前为止的想法:

    CREATE TABLE Duplicate_Check 
    (field1 numeric(14), 
    PO numeric (7) Primary Key 
    )

         load data
         infile '\(file location\.txt'
         into table Duplicate_Check
         (field1 position(1:14),
         PO position(16:22) ) 
        (field1, PO)

我会使用 oracle UTL_FILE 包来读取文件并解析出您需要检查重复项的数据。看来您只需要阅读前两行。

文件必须存在于数据库可访问的路径上,DBA 必须在 ACL 中设置访问权限。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Demo sử dụng Oracle Objects for OLE (OO4O) với Clasic ASP</title>
 <style type="text/css">
  textarea {
   width: 800px;
   height: 200px
  }
  
  .button {
   width: 120px;
   height: 35px;
   cursor: pointer;
  }
  
  table {
   border: 2px solid #424242;
   border-collapse: collapse;
  }
  
  th, td {
   border: 1px solid #424242;
   border-collapse: collapse;
   padding: 5px;
  }
 </style>
</head>
<body>
    <h2>Demo sử dụng Oracle Objects for OLE (OO4O) với Clasic ASP</h2>
 
 <form action="" method="post">
  <div>
   <h4>Nhập câu lệnh SQL:</h4>
   <textarea name="query">SELECT * FROM Employees WHERE ROWNUM <= 10</textarea>
  <div>
  
  <div>
   <input type="submit" value="Execute SQL" class="button" />
  </div>
 </form>
 
 
</body>
</html>