View a markdown version of this page

Recupero di informazioni dal catalogo di sistema Babelfish - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Recupero di informazioni dal catalogo di sistema Babelfish

Puoi ottenere informazioni sugli oggetti di database archiviati nel cluster Babelfish eseguendo query su molte delle stesse viste di sistema utilizzate in SQL Server. Ogni nuova versione di Babelfish aggiunge supporto per ulteriori viste di sistema. Per un elenco delle viste attualmente disponibili, consulta la tabella SQL Server system catalog views.

Queste viste di sistema forniscono informazioni dal catalogo di sistema (sys.schemas). Nel caso di Babelfish, queste viste contengono entrambi gli schemi di sistema SQL Server e PostgreSQL. Per eseguire query su Babelfish per informazioni sul catalogo di sistema, puoi utilizzare la porta TDS o la porta PostgreSQL, come illustrato negli esempi seguenti.

  • Interroga la T-SQL porta utilizzando sqlcmd o un altro client SQL Server.

    1> SELECT * FROM sys.schemas 2> GO

    Questa query restituisce gli schemi di sistema SQL Server e Aurora PostgreSQL, come mostrato di seguito.

    name --------------------------------------------------------- demographic_dbo public sys master_dbo tempdb_dbo ...
  • Esegui query sulla porta PostgreSQL utilizzando psql o pgAdmin. In questo esempio viene utilizzato il meta-comando degli schemi di elenco psql (\dn):

    babelfish_db=> \dn

    La query restituisce lo stesso set di risultati restituito da sqlcmd sulla T-SQL porta.

    List of schemas Name ------------------------------ demographic_dbo public sys master_dbo tempdb_dbo ...

Cataloghi di sistema SQL Server disponibili in Babelfish

Nella tabella seguente sono disponibili le viste SQL Server attualmente implementate in Babelfish. Per ulteriori informazioni sui cataloghi di sistema in SQL Server, vedere System Catalog Views (Transact-SQL) nella documentazione Microsoft.

Nome della vista Descrizione o limitazione Babelfish (se presente)

sys.all_columns

Tutte le colonne di tutte le tabelle e tutte le viste

sys.all_objects

Tutti gli oggetti in tutti gli schemi

sys.all_sql_modules

L'unione di sys.sql_modules e sys.system_sql_modules

sys.all_views

Tutte le visualizzazioni in tutti gli schemi

sys.columns

Tutte le colonne in tabelle e viste definite dall'utente

sys.configurations

Supporto Babelfish limitato a una singola configurazione di sola lettura.

sys.data_spaces

Contiene una riga per ogni spazio dati. Può essere un filegroup, uno schema di partizione o un filegroup di dati FILESTREAM.

sys.database_files

Una vista per database contenente una riga per ogni file di un database come archiviato nel database stesso.

sys.database_mirroring

Per informazioni, vedere sys.database_mirroring nella documentazione Microsoft. Transact-SQL

sys.database_principals

Per informazioni, vedere sys.database_principals nella documentazione Microsoft. Transact-SQL

sys.database_role_members

Per informazioni, vedere sys.database_role_members nella documentazione Microsoft. Transact-SQL

sys.databases

Tutti i database in tutti gli schemi

sys.dm_exec_connections

Per informazioni, vedere sys.dm_exec_connections nella documentazione Microsoft. Transact-SQL

sys.dm_exec_sessions

Per informazioni, vedere sys.dm_exec_sessions nella documentazione Microsoft. Transact-SQL

sys.dm_hadr_database_replica_states

Per informazioni, vedere sys.dm_hadr_database_replica_states nella documentazione Microsoft. Transact-SQL

sys.dm_os_host_info

Per informazioni, vedere sys.dm_os_host_info nella documentazione Microsoft. Transact-SQL

sys.endpoints

Per informazioni, consulta sys.endpoints nella documentazione Microsoft. Transact-SQL

sys.indexes

Per informazioni, vedere sys.indexes nella documentazione Microsoft. Transact-SQL

sys.languages

Per informazioni, vedere sys.languages nella documentazione Microsoft Transact-SQL.

sys.schemas

Tutti gli schemi

sys.server_principals

Tutti gli accessi e i ruoli

sys.sql_modules

Per informazioni, vedere sys.sql_modules nella documentazione Microsoft. Transact-SQL

sys.sysconfigures

Supporto Babelfish limitato a una singola configurazione di sola lettura.

sys.syscurconfigs

Supporto Babelfish limitato a una singola configurazione di sola lettura.

sys.sysprocesses

Per informazioni, vedere sys.sysprocesses nella documentazione Microsoft. Transact-SQL

sys.system_sql_modules

Per informazioni, vedere sys.system_sql_modules nella documentazione Microsoft. Transact-SQL

sys.table_types

Per informazioni, consulta sys.table_types nella documentazione Microsoft. Transact-SQL

sys.tables

Tutte le tabelle in uno schema

sys.xml_schema_collections

Per informazioni, vedere sys.xml_schema_collections nella documentazione Microsoft. Transact-SQL

PostgreSQL implementa cataloghi di sistema simili alle viste del catalogo oggetti di SQL Server. Per l'elenco completo dei cataloghi di sistema, consulta System Catalogs (Cataloghi di sistema) nella documentazione di PostgreSQL.

Esportazioni DDL supportate da Babelfish

A partire dalle versioni 2.4.0 e 3.1.0, Babelfish supporta le esportazioni DDL utilizzando vari strumenti. Ad esempio, puoi utilizzare questa funzionalità di SQL Server Management Studio (SSMS) per generare gli script di definizione dei dati per vari oggetti in un database Babelfish per Aurora PostgreSQL. Quindi puoi utilizzare i comandi DDL generati in questo script per creare gli stessi oggetti in un altro database Babelfish per Aurora PostgreSQL o SQL Server.

Babelfish supporta le esportazioni DDL per i seguenti oggetti nelle versioni specificate.

Elenco di oggetti 2.4.0 3.1.0
Tabelle dell'utente
Chiavi primarie
Chiavi esterne
Vincoli univoci
Indici
Vincoli check
Visualizzazioni
Stored procedure
User-defined funzioni
Table-valued funzioni
Triggers
Tipi di dati definiti dall'utente NoNo
Tipi di tabella definiti dall'utente NoNo
Utenti NoNo
Accessi NoNo
Sequenze NoNo
Roles NoNo

Limitazioni con le DDL esportate

  • Usa gli escape hatch prima di ricreare gli oggetti con le DDL esportate: Babelfish non supporta tutti i comandi nello script DDL esportato. Usa gli escape hatch per evitare errori causati durante la ricreazione degli oggetti dai comandi DDL in Babelfish. Per ulteriori informazioni sugli escape hatch, consulta Gestione degli errori di Babelfish con escape hatch.

  • Oggetti contenenti vincoli CHECK con clausole COLLATE esplicite: gli script con questi oggetti generati da un database SQL Server hanno regole di confronto diverse ma equivalenti a quelle del database Babelfish. Ad esempio, alcune raccolte, come sql_latin1_general_cp1_cs_as, sql_latin1_general_cp1251_cs_as e latin1_general_cs_as vengono generate come latin1_general_cs_as, che è la regola di confronto di Windows più vicina.