Kategorien:

Systemfunktionen (Informationen)

SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT

Gibt die Liste der Spalten zurück, die durch einen vorherigen Aufruf von SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT für die angegebene Snowflake-Ansicht angegeben wurden (z. B. für eine bestimmte ACCOUNT_USAGE-Ansicht oder INFORMATION_SCHEMA-Ansicht).

Weitere Informationen dazu finden Sie unter Umgang mit neuen Spalten in SHOW-Befehlsausgaben und Snowflake-Ansichten.

Siehe auch:

SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT, SYSTEM$UNSET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT, SYSTEM$GET_ALL_DEFAULT_COLUMNS_OVERRIDES

Syntax

SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT(
  '<object_type>',
  '<database_name>',
  '<schema_name>',
  '<object_name>'
)
Copy

Argumente

'object_type'

Typ des Objekts. Sie müssen 'VIEW' für dieses Argument angeben.

'database_name'

Name der Datenbank, die das Objekt enthält. Sie müssen 'SNOWFLAKE' oder, für INFORMATION_SCHEMA-Ansichten, eine leere Zeichenfolge angeben.

'schema_name'

Name des Schemas, das das Objekt enthält. Sie müssen den Namen eines Schemas in der SNOWFLAKE-Datenbank oder in 'INFORMATION_SCHEMA' angeben.

'object_name'

Name des Objekts.

Rückgabewerte

Gibt einen VARCHAR-Wert zurück, der eine durch Kommas getrennte Liste der Spalten enthält, die durch den vorherigen Aufruf von SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT angegeben wurden. Die Spaltennamen sind in Großbuchstaben geschrieben.

Wenn SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT nicht aufgerufen wurde, oder wenn SYSTEM$UNSET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT aufgerufen wurde, um die Liste der Spalten zu löschen, gibt die Funktion eine leere Zeichenfolge zurück.

Anforderungen an die Zugriffssteuerung

Diese Funktion kann nur von Kontoadministratoren (d. h. Benutzer mit der Rolle ACCOUNTADMIN) aufgerufen werden.

Nutzungshinweise

  • Sie müssen eine Datenbank in Verwendung haben (z. B. durch Ausführen von USE DATABASE), um diese Funktion aufzurufen. Wenn aktuell keine Datenbank in Verwendung ist, schlägt der Funktionsaufruf fehl.

Beispiele

Im folgenden Beispiel wird die Liste der Spalten zurückgegeben, die durch einen vorherigen SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT-Aufruf für die TABLES-Ansicht im ACCOUNT_USAGE-Schema festgelegt wurde:

SELECT SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT(
  'VIEW',
  'SNOWFLAKE',
  'ACCOUNT_USAGE',
  'TABLES'
);
Copy
+--------------------------------------------------------+
| SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT( |
|   'VIEW',                                              |
|   'SNOWFLAKE',                                         |
|   'ACCOUNT_USAGE',                                     |
|   'TABLES'                                             |
| )                                                      |
|--------------------------------------------------------|
| TABLE_NAME,TABLE_SCHEMA,TABLE_TYPE                     |
+--------------------------------------------------------+

Im folgenden Beispiel wird die Liste der Spalten zurückgegeben, die durch einen vorherigen SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT-Aufruf für die TABLES-Ansicht im INFORMATION_SCHEMA-Schema festgelegt wurde:

SELECT SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT(
  'VIEW',
  '',
  'ACCOUNT_USAGE',
  'TABLES'
);
Copy
+--------------------------------------------------------+
| SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT( |
|   'VIEW',                                              |
|   '',                                                  |
|   'INFORMATION_SCHEMA',                                |
|   'TABLES'                                             |
| )                                                      |
|--------------------------------------------------------|
| TABLE_NAME,TABLE_SCHEMA,TABLE_TYPE                     |
+--------------------------------------------------------+

Wenn SYSTEM$SET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT nicht aufgerufen wurde, oder wenn SYSTEM$UNSET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT aufgerufen wurde, um die Liste zu löschen, gibt die Funktion eine leere Zeichenfolge zurück.

SELECT SYSTEM$UNSET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT(
  'VIEW',
  'SNOWFLAKE',
  'ACCOUNT_USAGE',
  'TABLES'
);

SELECT SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT(
  'VIEW',
  'SNOWFLAKE',
  'ACCOUNT_USAGE',
  'TABLES'
);
Copy
+--------------------------------------------------------+
| SYSTEM$GET_DEFAULT_COLUMNS_OVERRIDE_FOR_SYSTEM_OBJECT( |
|   'VIEW',                                              |
|   'SNOWFLAKE',                                         |
|   'ACCOUNT_USAGE',                                     |
|   'TABLES'                                             |
| )                                                      |
|--------------------------------------------------------|