0
Oracleテーブルのclobフィールドにロードしようとしている.xmlファイルがあります。 .xmlファイルの長さは49行です。私のsqlloader cntlを実行すると、.xmlファイル全体がテーブルに新しい行として49回ロードされます。私はOracle 11.2.0.3を使用しています。何が間違っていますか?Oracleテーブルにclobをロードしようとすると、あまりにも多くのレコードがロードされる
私CNTLCREATE TABLE "LEAD_REPORTING_CLOB"
("SHARED_XML" CLOB);
:
LOAD DATA
INFILE *
REPLACE
INTO TABLE LEAD_REPORTING_CLOB
TRAILING NULLCOLS
(
SHARED_XML LOBFILE(CONSTANT '/export/RFD/Lead_Reports/LEADRPT.xml') TERMINATED BY EOF
)
xml file:
<?xml version="1.0" encoding="utf-8"?>
<LeadReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.xxx.yyy/efile">
<Lead>
<SubmissionId>530153999999zdhxxx</SubmissionId>
<PatternDescription>OLF</PatternDescription>
<SourceIPAddress>
<IPAddress>
<IPv4AddressTxt>999.99.99.999</IPv4AddressTxt>
</IPAddress>
<TCPPortNumber>443</TCPPortNumber>
<IPTs>2016-02-05T13:16:55-05:00</IPTs>
</SourceIPAddress>
<SourceDeviceId>
<DeviceId>74B3A80AE5C99X9X99999C17XX59E5XX3779999A</DeviceId>
<DeviceIdTs>2016-02-05T13:16:55-05:00</DeviceIdTs>
</SourceDeviceId>
<AdditionalInformation>
<ReturnSubmStatus>A</ReturnSubmStatus>
<EFIN>555555</EFIN>
<EmailAddressDomain>GMAIL.COM</EmailAddressDomain>
<PhoneNumberLastFour>1899</PhoneNumberLastFour>
</AdditionalInformation>
</Lead>
<Lead>
<SubmissionId>9999992016108floxxx2</SubmissionId>
<AssociatedState>
<StateSubmissionId>9999992016108xhaxxx2</StateSubmissionId>
<StateOrCityCode>GAST</StateOrCityCode>
</AssociatedState>
<PatternDescription>OLF</PatternDescription>
<SourceIPAddress>
<IPAddress>
<IPv4AddressTxt>188.88.8.188</IPv4AddressTxt>
</IPAddress>
<TCPPortNumber>443</TCPPortNumber>
<IPTs>2016-04-17T08:07:54-04:00</IPTs>
</SourceIPAddress>
<SourceDeviceId>
<DeviceId>6B9D4C4B0159XXX8FA30391BC8A099999009B366</DeviceId>
<DeviceIdTs>2016-04-17T08:07:54-04:00</DeviceIdTs>
</SourceDeviceId>
<AdditionalInformation>
<ReturnSubmStatus>A</ReturnSubmStatus>
<EFIN>444444</EFIN>
<EmailAddressDomain>YAHOO.COM</EmailAddressDomain>
<PhoneNumberLastFour>3822</PhoneNumberLastFour>
</AdditionalInformation>
</Lead>
</LeadReport>
ありがとう:3つのファイルを避けるために、あなたは(これはINFILE後astriskが何のためにあるのかである)BEGINDATAディレクティブを使用して、制御ファイルに、メイン・データ・ファイルを置きます。これは私には新しく、本当に理解したいです。私は1つの入力.xmlファイルを持っています。あなたはそれに追随するための追加ファイルが必要だと思っていますか?私はそれが必要なようには聞こえません。私のコマンドラインには、 'data ='という.xmlファイル名が含まれています。両方の場所で名前を持つことを避ける方法はありますか?あなたが提供したcntlファイルを試しましたが、エラーが発生しました。 Expected keyword INTO、found "("。 ( )^ – Marianne
これはコマンドラインで指定すると、読み込むLOBファイルだけでなくメインデータファイルとしても使用されます。コマンドラインで指定してくださいINFILE句と矛盾しています。エラーについては調査します。 – Codo
制御ファイルコマンドを更新しました。うまくいけばうまくいきます。 – Codo