FND_LOBS ist eine der großen und wichtigen Tabellen in Oracle Apps. Lassen Sie uns verschiedene wichtige Dinge über diese Tabelle sehen
Inhaltsverzeichnis
Was wird in FND_LOBS gespeichert?
FND_LOBS speichert Informationen über alle vom Generic File Manager (GFM) verwalteten LOBs. Jede Zeile enthält die Dateikennung, den Namen, den Inhaltstyp und die eigentlichen Daten. Jede Zeile enthält auch das Datum, an dem die Datei hochgeladen wurde und wann sie abläuft, den zugehörigen Programmnamen und das zugehörige Tag sowie die Sprache und den Oracle-Zeichensatz. Die Dateidaten, die ein binäres LOB sind, werden genau so gespeichert, wie sie von einem Client-Browser hochgeladen werden, was bedeutet, dass während eines Downloads keine Übersetzungsarbeit erforderlich ist, um sie HTTP-konform zu machen. Daher müssen Uploads aus Nicht-Browser-Quellen den Inhalt entsprechend aufbereiten (z. B. Trennzeilen mit CRLF).
Wie lösche ich Einträge aus FND_LOBS?
Das gleichzeitige Programm „Purge Obsolete Generic File Manager Data“ wird verwendet, um FND_LOBS zu löschen, und es löscht Einträge nach dem Typ
– Einträge für die Anwendungshilfe (iHelp) – werden nicht gelöscht
– Anhänge – wird gelöscht, wenn abgelaufen
– Exporte – wird gelöscht
Der Ablauf von Anhängen sollte über die Anwendung erfolgen und nicht manuell die Tabelle aktualisieren.
Einträge, die ein Ablaufdatum haben, können Sie am Programmnamen erkennen, der ausgeführt wird:
select program_name,count(*)
from FND_LOBS
where expiration_date is not NULL
group by program_name;
Einträge ohne Ablaufdatum konnten gefunden werden:
select program_name,count(*)
from FND_LOBS
where expiration_date is NULL
group by program_name;
Wie finde ich den in den Lobsegmenten zugewiesenen Speicherplatz im Vergleich zum verwendeten Speicherplatz?
Um herauszufinden, wie viel Speicherplatz tatsächlich von den Lobsegmenten verwendet wird, können Sie Folgendes ausführen:
select sum(dbms_lob.getlength (FILE_DATA)) from FND_LOBS;
SUM(DBMS_LOB.GETLENGTH(FILE_DATA))
----------------------------------
57253782456
Der in den Extents zugewiesene Gesamtspeicherplatz kann folgendermaßen gefunden werden:
select sum(bytes), s.segment_name, s.segment_type from dba_lobs l, dba_segments s where s.segment_type = 'LOBSEGMENT' and l.table_name = 'FND_LOBS' and s.segment_name = l.segment_name group by s.segment_name,s.segment_type; SUM(BYTES) SEGMENT_NAME SEGMENT_TYPE ---------- --------------------------------- ------------------ 525472547345 SYS_LOB0000057C00004$$ LOBSEGMENT
So finden Sie den Speicherplatz, der von jedem Programm verwendet wird
select
program_name,round(sum(dbms_lob.getlength (FILE_DATA))/1024/1024,0) "Size(M)"
from APPS.fnd_LOBS
where expiration_date is NULL
group by program_name order by 2 desc
PROGRAM_NAME Size(M)
-------------------------------- ----------
FNDATTCH 864
FND_HELP 280
export 7
HRMS_ADI 5
PERWSIMG 3
IBE 0
PER_P11D_gb_UK.pdf 0
.
So ändern Sie die PCTVERSION
ALTER TABLE APPLSYS.FND_LOBS MODIFY LOB (FILE_DATA) ( PCTVERSION 0 );
Wie kann ich den Inhalt des LOB sehen?
-- Read from fnd_lobs a given file_id set serveroutput on size 1000000; declare my_lob BLOB; Buffer RAW(255); Amount BINARY_INTEGER := 255; Position INTEGER := 1; begin select file_data into my_lob from fnd_lobs where file_id = &enter_file_id; dbms_lob.open(my_lob, dbms_lob.lob_readonly); DBMS_OUTPUT.PUT_LINE('Start of data'); loop DBMS_LOB.READ(my_lob, Amount, Position, Buffer); /* Process the buffer: */ DBMS_OUTPUT.PUT_LINE(utl_raw.cast_to_varchar2(Buffer)); Position := Position + Amount; end loop; dbms_lob.close(my_lob); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('End of data'); end; /
Anhangdatei von fnd_lobs herunterladen
- Holen Sie sich die FILEID aus der Datenbank für die LOB-Datei, die Sie herunterladen möchten, zum Beispiel:
select FILE_ID,FILE_NAME from FND_LOBS where FILE_ID=123599;
FILE_ID FILE_NAME
---------- -------------
1212 TEST.XLS
2. Führen Sie den FNDGFU-Befehl aus. Für Dateibeispiel oben:
FNDGFU apps/apps 0 Y DOWNLOAD=1212 TEST.XLS
Verwandte Artikel
Verschieben von Lob-Segmenten:Verschieben von Lob-Segmenten von einem Tablespace in einen anderen, Zurückgewinnen von Speicherplatz nach dem Löschen eines größeren Lob-Segments, Verwenden des Shrink-Befehls in LOB-Segmenten
Attachments in Oracle Applications:Check diesen Beitrag über Anhänge in Oracle-Anwendungen R12, wie sie gespeichert werden, am Prozess beteiligte Tabellen und Abfragen
Oracle EBS Auditing :Wie man Oracle EBS Auditing einrichtet, wie man Tabellen in Audit-Gruppen hinzufügt, wie man Spalten auswählt für Auditing, Audit-Trail-Aktualisierung gleichzeitige Anfrage
EBS-Benutzer vom Backend erstellen:In diesem Beitrag geht es darum, wie man EBS-Benutzer vom Backend erstellt und wie man dem erstellten Benutzer Anwendungsverantwortung zuweist