SQL- Grammatik

Oracle AI Data Platform Workbench-Benutzer können SQL verwenden, um ihre DDL-Workloads zu automatisieren.

Katalog-SQL-Grammatik

Katalogobjekte unterstützen die aufgelistete SQL-Grammatik für DDL-Workloads.

Oracle AI Data Platform Workbench unterstützt alle standardmäßigen Spark SQL-Datentypen. Weitere Informationen finden Sie unter Apache Spark-Dokumentation - Unterstützte Datentypen.

Tabelle 45-1 Standard- und externe Katalog-SQL-Grammatik

Vorgang Grammatik
Katalog erstellen

Katalog

CREATE CATALOG [ IF NOT EXISTS ] <<catalog_name>> [ PROPERTIES (DESCRIPTION = description ) ] OPTIONS ( { option_name = option_value } [ , ... ] )

Externer Katalog

CREATE EXTERNAL CATALOG [ IF NOT EXISTS ] <<catalog_name>> [PROPERTIES ( DESCRIPTION description ) ]OPTIONS ( { option_name = option_value } [ , ... ] )

OPTIONS enthält Verbindungsdetails

Externer Katalog - Oracle Autonomous AI Lakehouse - Beispiel

wt = base64 encoded wallet contents
create_sql="create external catalog if not exists
catalog_adw options
 ('wallet.content' = '{wt}', 'type' = 'ORACLE_ADW',
'user.name' = 'ADMIN',
 'tns' = 'adw23ai_high', 'password' =
 'xxxxx','wallet.password' = 'xxxxx')"

Antwort

Catalog <<catalog_name>> created successfully

Fehler

<<SQL Command>> failed due to <<reason>>
Katalog ändern

Katalognamen ändern

ALTER CATALOG old_catalog_name RENAME new_catalog_name;

Katalogbeschreibung ändern

ALTER CATALOG <catalog-name> set properties (DESCRIPTION=<property-value>)

Katalogoptionen ändern (conn)

ALTER CATALOG <catalog-name> set options (option_name = option_value)

Antwort

Catalog <<catalog_name>> updated successfully

Fehler

<<SQL Command>> failed due to <<reason>>
Katalog löschen
DROP CATALOG [ IF EXISTS ] catalog_name

Standardmäßig werden während des DROP-Katalogs alle untergeordneten Objekte ebenfalls gelöscht

Antwort

Catalog <<catalog_name>> dropped successfully

Fehler

<<SQL Command>> failed due to <<reason>>
Listenkataloge
SHOW CATALOGS [ [ LIKE ] [ regex_pattern ] [ TYPE = EXTERNAL CATALOG | CATALOG ]

regex_pattern: Ein reguläres Ausdrucksmuster, mit dem die Ergebnisse der Anweisung gefiltert werden.

Antwort:
Katalog Typ
<<Katalogname>> Katalog | Externer Katalog
<<Katalogname>> Katalog | Externer Katalog
<<Katalogname>> Katalog | Externer Katalog

Fehler

<<SQL Command>> failed due to <<reason>>
Katalog beschreiben
DESC CATALOG <<catalog_name>>
DESCRIBE CATALOG <<catalog_name>>
Antwort (Standardkatalog):
Attribut Datum
Name Standardkatalogname
Typ Standardkatalog
Beschreibung Standardkatalogbeschreibung
Erstellt von Principal, der den Standardkatalog erstellt hat
Erstellt am Erstellungsdatum und -zeit
Aktualisiert von Principal, der den Standardkatalog zuletzt aktualisiert hat
Aktualisiert am Datum und Uhrzeit der letzten Aktualisierung
Antwort (externer Katalog):
Attribut Datum
Name Externer Katalogname
Typ Externer Katalog
Quelltyp Quelle des externen Katalogs (z.B. Oracle Autonomous AI Lakehouse)
Beschreibung Externe Katalogbeschreibung
Erstellt von Principal, der den externen Katalog erstellt hat
Erstellt am Erstellungsdatum und -zeit
Aktualisiert von Principal, der den externen Katalog zuletzt aktualisiert hat
Aktualisiert am Datum und Uhrzeit der letzten Aktualisierung
Verbindungsdetails .json-Datei verbinden

Fehler:

<<SQL Command>> failed due to <<reason>>
Katalog aktualisieren
REFRESH [EXTERNAL] CATALOG <<catalog_name>>
Antwort:
Refresh Initiated

Schema-SQL-Grammatik

Schema unterstützt die aufgelistete SQL-Grammatik für DDL-Workloads.

Oracle AI Data Platform Workbench unterstützt alle standardmäßigen Spark SQL-Datentypen. Weitere Informationen finden Sie unter Apache Spark-Dokumentation - Unterstützte Datentypen.

Tabelle 45-2: Liste der SQL-Grammatik für Schemas

Vorgang Grammatik
Schema erstellen
CREATE SCHEMA [IF NOT EXISTS] catalog_name.schema_name

Antwort

<<SQL Command>> was successfully executed

Fehler

Error: <<SQL Command>> failed due to <<reason>>
Schema ändern
Schemabeschreibung ändern
ALTER SCHEMA <schema-name> set dbproperties (DESCRIPTION=<property-value>)
Antwort
<<SQL Command>> was successfully executed
Fehler
Error: <<SQL Command>> failed due to <<reason>>
Schema löschen
DROP SCHEMA [ IF EXISTS ] <<schema_name>>

Standardmäßig werden alle untergeordneten Objekte während des DROP-Schemas ebenfalls gelöscht

Schemas auflisten
SHOW SCHEMAS [ { FROM | IN } catalog_name ] [ [ LIKE ] regex_pattern ]
Beispiele:
  • SHOW SCHEMAS FROM defaultcatalog1 LIKE 'd*'
  • SHOW SCHEMAS IN defaultcatalog1 LIKE 'd*'
Antwort:
  Schema
1 <<schema_1>>
2 <<schema_2>>
2 <<schema_3>>

Fehler

Error: <<SQL Command>> failed due to <<reason>>
Schema beschreiben (get-Details)

DESCRIBE SCHEMA <<catalog_name>>.<<schema_name>>

DESCRIBE SCHEMA <<schema_name>>

DESCRIBE SCHEMA <<schema_name>> in Catalog <<catalog_name>>

Attribut Datum
Katalogname Katalogname
Schema Schemaname
Beschreibung Schemabeschreibung
Erstellt von Benutzer, der den Katalog erstellt hat
Erstellt am Erstellungsdatum und -zeit
Aktualisiert von Benutzer, der den Katalog zuletzt aktualisiert hat
Aktualisiert am Datum und Uhrzeit der letzten Aktualisierung
Verzeichnis Speicherort im Kataloge
Schema löschen drop schema [ IF EXISTS ] <<schema_name>> cascade
Schema aktualisieren
REFRESH SCHEMA IN [EXTERNAL] CATALOG <<catalog_name.schema_name>>
Antwort:
Refresh Initiated

Volume-SQL-Grammatik

Volume-Objekte unterstützen die aufgelistete SQL-Grammatik für DDL-Workloads.

Oracle AI Data Platform Workbench unterstützt alle standardmäßigen Spark SQL-Datentypen. Weitere Informationen finden Sie unter Apache Spark-Dokumentation - Unterstützte Datentypen.

Tabelle 45-3: SQL-Grammatik für Volumen

Vorgang Grammatik
Datenträger erstellen
CREATE [ EXTERNAL ] VOLUME [IF NOT EXISTS ] <<catalog_name.schema_name.volume_name>> [ LOCATION location_path ] [ PROPERTIES (DESCRIPTION = description ) ]
Volume-Eigenschaften ändern
ALTER VOLUME <<volume_name>> { RENAME TO <<new_volume_name>> | [ set properties (DESCRIPTION = description) ] }
Volume löschen
DROP VOLUME [ IF EXISTS ] <<volume_name>>

OR

DROP VOLUME <<catalog_name>>.<<schema_name>>.<<volume_name>>

Standardmäßig werden beim DROP-Volume auch alle untergeordneten Objekte gelöscht

Volumes auflisten
SHOW VOLUMES [ { FROM | IN } catalog_name.schema_name ] [ [ LIKE ] regex_pattern } ] 
Volume beschreiben
DESCRIBE VOLUME volume_name
Attribut Datum
Katalogname Katalogname
Schemaname Schemaname
Datenträgername Datenträgername
Beschreibung Benutzerdefinierte Beschreibung des Volumes
Verzeichnis Speicherort in Katalog
Volume-Typ Typ des Datenträgers

Fehler:

Error: <<SQL Command>> failed due to <<reason>>

Tabellen-SQL-Grammatik

Tabellenobjekte unterstützen die aufgelistete SQL-Grammatik für DDL-Workloads.

Oracle AI Data Platform Workbench unterstützt alle standardmäßigen Spark SQL-Datentypen. Weitere Informationen finden Sie unter Apache Spark-Dokumentation - Unterstützte Datentypen.

Vorgang Grammatik
Tabelle erstellen
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] <catalog_name>.<schema-name>.<table-name>
[ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ]
USING [HIVE|DELTA, CSV, TXT, ORC, JDBC, PARQUET, etc.]
[ options ( <key1>=<val1>[, ...]) ]
[ PARTITIONED BY (<par-column-name>[, ...]) ]
[ CLUSTERED BY ( <clus-column-name>[, ...])
    [ SORTED BY ( <sort-column-name> [ asc | desc ][, ...]) ]
    INTO <num_buckets> buckets]
[ LOCATION '<path>']
[TBLPROPERTIES ( DESCRIPTION = 'some-description', '<property-name>'='<property-value>'[, ...]) ]

Antwort:

<<SQL Command>> was successfully executed

Fehler:

Error: <<SQL Command>> failed due to <<reason>>
Verwaltete Tabelle erstellen
Verwaltete Tabelle erstellen
CREATE TABLE <catalog>.<schema>.<table-name> [ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ] USING <format>;

Antwort:

<<SQL Command>> was successfully executed
Fehler:
Error: <<SQL Command>> failed due to <<reason>>
Verwaltete Tabelle mit Daten erstellen
create datatable <<catalog_name>>.<<schema_name>>.<<table_name>> [ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ] tblproperties ('lakehouse_storage_format'='PARQUET') using parquet with select ( <column1-name>], ... ) from parquet.'oci://bucket@namespace/folder/'

Antwort:

<<SQL Command>> was successfully executed
Fehler:
Error: <<SQL Command>> failed due to <<reason>>
Tabelle mit einheitlicher Unterstützung erstellen
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] <catalog_name>.<schema-name>.<table-name>
[ ( <column1-name> <column1-type> [comment <column1-comment>], ... ) ]
[TBLPROPERTIES ('delta.universalFormat.enabledFormats' = 'iceberg') ]
Tabelle ändern
ALTER TABLE table_old_name RENAME TO table_new_name
ALTER TABLE table_name ADD COLUMNS ( col_spec [ , ... ])
ALTER TABLE table_name DROP { COLUMN | COLUMNS } [ ( ] col_name [ , ... ] [ ) ]
ALTER TABLE table_name RENAME COLUMN col_name TO col_name
ALTER TABLE table_name ADD [IF NOT EXISTS] ( partition_spec [partition_spec ... ] )
ALTER TABLE table_name DROP [ IF EXISTS ] partition_spec [PURGE]
ALTER TABLE table_name set tblproperties (description ='some-description')
Tabelle löschen
DROP TABLE [ IF EXISTS ] table_name [ PURGE ]

Antwort:

<<SQL Command>> was successfully executed

Fehler:

Error: <<SQL Command>> failed due to <<reason>>
Tabellen in einem Schema auflisten
SHOW TABLES in catalog_name.schema_name [ LIKE <regex_pattern> ]

regex_pattern: Ein reguläres Ausdrucksmuster, mit dem die Ergebnisse der Anweisung gefiltert werden.

Antwort:
<<namesake>>,tableName,isTemporary

Fehler:

<<SQL Command>> failed due to <<reason>>
Tabelle beschreiben
DESCRIBE TABLE [ FORMAT ] catalog_name.schema_name.table_name [ PARTITION (<partition_col_name> = <partition_col_val>, ...) ] [ catalog_name.schema_name.table_name.column_name ]

Format: Wenn EXTENDED als Format angegeben ist, werden zusätzliche Metadateninformationen (wie übergeordnete Datenbank, Eigentümer und Zugriffszeit) zurückgegeben.

DESCRIBE TABLE catalog.schema.table Antwort:

col_name,data_type,comment
DESCRIBE TABLE catalog.schema.table column Antwort:
info_name,info_value
Tabelle aktualisieren
REFRESH TABLE IN EXTERNAL CATALOG <<catalog_name.schema_name.table_name>>
Antwort:
Refresh Initiated

DML-Abfragen

Sie können mithilfe von Oracle AI Data Platform-Notizbüchern, SL-, Python- und Spark-Skripten SELECT-, INSERT- und DELETE-Abfragen zu Daten ausführen.

Oracle AI Data Platform Workbench unterstützt derzeit Spark 3.5 mit Delta Lake 3.2.0. Weitere Informationen zu DML-Abfragen finden Sie unter: