Zum Inhalt springen

Bitte um Hilfe. Oracle + PL/SQl + EXCEL


gdeba001

Empfohlene Beiträge

:( Ich habe ein Exel tabelle mit mehere Spalten. Ich habe eine spalte die mir interressiert COF_CODE. Ich soll mit eine prozedur die alle einträge zugreifen und jedesmal ein query aul mein datenbank machen. Das ergebnis soll in einer datei gespeichert werden.

Eingabe datei:

COF_CODE VC_LEGAL_ID filter neg_dat score

121B0KXR3 3 0 562

121B0PVT3 6 0 572

121364748 3 0 558

121B0S2V9 3 0 552

121273093 6 0 561

121010454 6 0 552

121599707 3 0 561

121B0XQF4 3 0 569

121598981 3 0 560

select r.ABN_ORG_ZN_NR

from cok_risiken r

where r.coface_r_nr = '121B0KXR3'

Ausgabe soll so aussehen

COF_CODE ABN_ORG_ZN_NR

121B0KXR3 ...

121B0PVT3

121364748

121B0S2V9

121273093

121010454

121599707

121B0XQF4

121598981

Brauche echt hilfe. Ich habe nur grundkenntnisse in PL/SQL.

Danke.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also ich habe 0 Ahnung von PL/SQL, aber in 2 Minuten fand ich alle wichtigen Ansatzpunkte für dich:

Datei Lesen/Schreiben

SQL Teil

quick and dirty:

-starte prozedur

-mach datei auf

-solange zeilen vorhanden, lese zeile ein

- nehme wert der ersten spalte (hier ist der einsatz von CSV vielleicht sinnvoll)

- mach dein SQL zeug

- rückgabe in datei schreiben

- beende prozedur

Link zu diesem Kommentar
Auf anderen Seiten teilen

Brauche echt hilfe. Ich habe nur grundkenntnisse in PL/SQL.

lade die excel-datei im csv-format über 'EXTERNAL TABLE'. danach beide tabellen joinen und ergebnis mittels einer CURSOR LOOP und UTL_FILE in eine datei rausschreiben oder einfach per sqlplus in eine datei spoolen.

wenn keine externe tabelle verwendet werden soll, kann man mi UTL_FILE auch die eingabedatei lesen. das kann man alles mit grundkenntnissen und der oracle doku zu UTL_FILE schaffen.

-j

Link zu diesem Kommentar
Auf anderen Seiten teilen

hallo,

Mein external table sieht so aus. infoline.csv ist mein csv datei. und dmco ist der user name für die Dantenbank.

CREATE OR REPLACE DIRECTORY dataload AS 'J:\Feuzet\Dataload\infoline.csv';

GRANT READ ON DIRECTORY dataload TO dmco;

GRANT WRITE ON DIRECTORY dataload TO dmco;

CREATE TABLE ext_table

( cofcode_1 VARCHAR2(9 BYTE),

cofcode_2 VARCHAR2(9 BYTE) )

ORGANIZATION EXTERNAL

( TYPE ORACLE_LOADER

DEFAULT DIRECTORY dataload

ACCESS PARAMETERS

( RECORDS DELIMITED BY NEWLINE

BADFILE dataload:'infoline.bad'

LOGFILE dataload:'infoline.log'

DISCARDFILE dataload:'infoline.dis'

SKIP 1

FIELDS TERMINATED BY ';'

MISSING FIELD VALUES ARE NULL

( cofcode_1,

cofcode_2)

)

LOCATION ('infoline.csv')

)

REJECT LIMIT UNLIMITED;

Problem: Es wird nich die entsprecheden datein gebuildet(infoline.log, .bad ...)

beim Select * from ext_table habe ich di fehler meldung:

ORA-29913: Fehler bei der Ausführung von Aufruf ODCIEXTTABLEOPEN

ORA-29400: Data Cartridge-Fehler

KUP-04063: unable to open log file infoline.log

OS error No such file or directory

ORA-06512: in "SYS.ORACLE_LOADER", Zeile 14

ORA-06512: in Zeile 1

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...