Zum Inhalt springen

Fehlermeldung beim SQL-Loader


Alex_winf01

Empfohlene Beiträge

Hallo liebe Forengemeinde,

ich experimentiere gerade mit dem SQL-Loader herum. Also, ich mache folgendes:

Datei Stammdaten.ctl steht folgendes:

LOAD DATA

INFILE 'Stammdaten.dat'

INSERT

INTO TABLE Stammdaten

FIELDS TERMINATED BY';'

(

Nummer,

NAME1,

NAME2,

STRASSE,

PLZ,

ORT,

TELEFON,

FAX,

ID,

SONSTIGES,

ANSP_NAME,

ANSP_TEL,

ANSP_NAME1,

ANSP_TEL1,

)

begindata

Dann rufe ich den SQL-Loader auf:

sqlldr benutzer/db@db1 control = D:\Pfad\Stammdaten.ctl

Nun bekomme ich folgende Fehlermeldungen:

SQL*LOADER-500: Datei(Stammdaten.dat) kann nicht geöffnet werden

SQL*LOADER-553: Datei nicht gefunden

SQL*LOADER-509: Systemfehler: Das System kann die angegebene Datei nicht finden

Was kann das sein? Die Datei heisst wirklich so und liegt tatslächlich unter D:\Pfad\.

Link zu diesem Kommentar
Auf anderen Seiten teilen

1. dein controlfile ist fehlerhaft (komma als feldtrenner nach letztem feld)

2. du *solltest* im controlfile den absoluten pfad (oder ein INFILE in einen im PATH enthaltenen pfad) angeben.

sql loader geht folgendermassen (u.a. in dieser reihenfolge) vor:

1. credentials überprüfen

2. controlfile auf existenz prüfen

3. zieltabellen und -felder prüfen

4. INFILE prüfen

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also, folgender "Fortschritt":

Die Datei stammdaten.ctl sieht jetzt wie folgt aus:

LOAD DATA

INFILE 'D:\Pfad\Stammdaten.dat'

INSERT

INTO TABLE Stammdaten

FIELDS TERMINATED BY';'

TRAILING NULLCOLS

(

Nummer,

NAME1,

NAME2,

STRASSE,

PLZ,

ORT,

TELEFON,

FAX,

ID,

SONSTIGES,

ANSP_NAME,

ANSP_TEL,

ANSP_NAME1,

ANSP_TEL1

)

Ich rufe den SQL-Loader auf:

sqlldr benutzer/db@db1 control = Stammdaten.ctl

Commit-Punkt erreicht - Anzahl der logischen Datensätze 64

Was mache ich da jetzt falsch?:(

Link zu diesem Kommentar
Auf anderen Seiten teilen

In die Tabelle wurde nichts importiert und an die Log-Datei komme ich nicht ran.

kann ich mir nicht vorstellen; sql loader legt das logfile normalerweise im selben pfad wie das INFLE an.

häng sqlldr zusätzlich noch zu control= ein log= dran, dann kannst du den pfad vom log steuern.

Nehme einem Entwickler sämtliche Admin-Rechte.

zum anlegen eines logfiles braucht man keine adminrechte, wenn man sql loader ausführen kann/darf.

Spalten mit Number(1,3)

das ist unüblich, und meist unangebracht, da die gesamtzahl der stellen kleiner ist als die nachkommagenauigkeit.

Dann sollte sich das Prob eigentlich löschen, wenn ich den Datentyp auf Number ändere

richtig.

s'Amstel

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...