Daten aus Verzeichnissen in Autonomous Database laden
Alternativ zum Speicherort-URI eines Objektspeichers können Sie ein Verzeichnis mit DBMS_CLOUD
-Prozeduren zum Laden oder Entladen von Daten aus Dateien in einem lokalen Verzeichnis angeben, einschließlich Verzeichnissen, die in angehängten Netzwerkdateisystemen erstellt wurden.
Die folgenden Verfahren unterstützen die Angabe von Dateien in einem Verzeichnis mit dem Parameter file_uri_list
:
DBMS_CLOUD.COPY_COLLECTION
DBMS_CLOUD.COPY_DATA
DBMS_CLOUD.CREATE_EXTERNAL_TABLE
Die folgenden Verfahren unterstützen die Angabe von Dateien in einem Verzeichnis mit dem Parameter partitioning_clause
:
DBMS_CLOUD.CREATE_EXTERNAL_TABLE
DBMS_CLOUD.CREATE_HYBRID_PART_TABLE
Sie können ein Verzeichnis und einen oder mehrere Dateinamen angeben oder eine kommagetrennte Liste von Verzeichnissen und Dateinamen verwenden. Das Format zur Angabe eines Verzeichnisses lautet:'MY_DIR:filename.ext'
. Standardmäßig ist der Verzeichnisname MY_DIR
ein Datenbankobjekt, bei dem die Groß-/Kleinschreibung nicht beachtet wird. Beachten Sie beim Dateinamen die Groß-/Kleinschreibung.
Wenn Sie mit dem Parameter file_uri_list
ein Verzeichnis angeben, müssen Sie den Parameter credential_name
nicht aufnehmen. Sie benötigen jedoch READ
-Objektberechtigungen für das Verzeichnis.
Beispiel: Mit einem Aufruf von DBMS_CLOUD.COPY_DATA
geben Sie mit dem Parameter file_uri_list
Dateien in einem Verzeichnis an:
BEGIN
DBMS_CLOUD.COPY_DATA
(
table_name => 'HRDATA1',
file_uri_list => 'HR_DIR:test.csv',
format => JSON_OBJECT('type' value 'csv') );
END;
/
In diesem Beispiel werden die Daten aus test.csv
im lokalen Verzeichnis HR_DIR
in die Tabelle HRDATA1
kopiert.
Reguläre Ausdrücke werden bei der Angabe der Dateinamen in einem Verzeichnis nicht unterstützt. Sie können nur Platzhalter verwenden, um Dateinamen in einem Verzeichnis anzugeben. Das Zeichen "*" kann als Platzhalter für mehrere Zeichen und das Zeichen "?" als Platzhalter für ein Einzelzeichen verwendet werden. Beispiel: 'MY_DIR:*"
oder 'MY_DIR:test?'
Um mehrere Verzeichnisse anzugeben, verwenden Sie eine durch Komma getrennte Liste von Verzeichnissen. Beispiel:'MY_DIR1:*, MY_DIR2:test?'
Verwenden Sie doppelte Anführungszeichen, um einen Verzeichnisnamen anzugeben, bei dem die Groß-/Kleinschreibung beachtet wird. Beispiel: '"my_dir1":*, "my_dir2":Test?'
Um ein Anführungszeichen einzuschließen, verwenden Sie zwei Anführungszeichen. Beispiel: 'MY_DIR:''filename.ext'
. Gibt an, dass filename
mit einem Anführungszeichen ('
) beginnt.
Informationen zum Anhängen von Netzwerkdateisystemen finden Sie unter Netzwerkdateisystem an Autonomous Database anhängen.
Hinweise zur Verwendung von Verzeichnissen mit DBMS_CLOUD-Prozeduren
Beachten Sie Folgendes, wenn Sie DBMS_CLOUD
-Prozeduren verwenden und ein Verzeichnis mit dem Parameter file_uri_list
angeben:
-
Komprimierungsoptionen für Dateien wie GZIP werden für Verzeichnisdateien nicht unterstützt. Weitere Informationen finden Sie in der Formatoption
compression
unter DBMS_CLOUD Package Format Options. -
Sonderzeichen wie Doppelpunkt (:), Anführungszeichen (') und Komma (,) werden im Verzeichnisnamen nicht unterstützt.
Übergeordnetes Thema: Verzeichnisse in Autonomous Database erstellen und verwalten