Obter informações do catálogo de sistemas do Babelfish
Para obter informações sobre os objetos de banco de dados armazenados no cluster do Babelfish, consulte muitas das mesmas visualizações do sistema utilizadas no SQL Server. Cada nova versão do Babelfish adiciona compatibilidade com mais visualizações do sistema. Para obter uma lista das visualizações atualmente disponíveis, consulte a tabela SQL Server system catalog views.
Essas visualizações do sistema fornecem informações do catálogo de sistemas (sys.schemas
). No caso do Babelfish, essas visualizações contêm esquemas de sistema SQL Server e PostgreSQL. Para consultar o Babelfish para obter informações de catálogo de sistemas, você pode usar a porta do TDS ou a porta do PostgreSQL, conforme mostrado nos exemplos a seguir.
Consulte a porta do T-SQL usando
sqlcmd
ou outro cliente do SQL Server.1>
SELECT * FROM sys.schemas2>
GOEssa consulta retorna esquemas de sistema do SQL Server e do Aurora PostgreSQL, conforme mostrado a seguir.
name --------------------------------------------------------- demographic_dbo public sys master_dbo tempdb_dbo ...
Consulte a porta do PostgreSQL usando
psql
oupgAdmin
. Este exemplo usa o metacomando de esquemas da listapsql
(\dn
):babelfish_db=>
\dnA consulta retorna o mesmo conjunto de resultados que o retornado por
sqlcmd
na porta do T-SQL.List of schemas Name ------------------------------ demographic_dbo public sys master_dbo tempdb_dbo ...
Catálogos de sistemas do SQL Server disponíveis no Babelfish
Na tabela a seguir, você pode encontrar as visualizações do SQL Server implementadas atualmente no Babelfish. Para ter mais informações sobre os catálogos de sistemas no SQL Server, consulte System Catalog Views (Transact-SQL)
Visualizar nome | Descrição ou limitação do Babelfish (se houver) |
---|---|
|
Todas as colunas em todas as tabelas e visualizações |
|
Todos os objetos em todos os esquemas |
|
A união de |
|
Todas as visualizações em todos os esquemas |
|
Todas as colunas em tabelas e visualizações definidas pelo usuário |
|
Compatibilidade do Babelfish limitada a uma única configuração somente leitura. |
|
Contém uma linha para cada espaço de dados. Isso pode ser um grupo de arquivos, um esquema de partição ou um grupo de arquivos de dados FILESTREAM. |
|
Uma visualização por banco de dados que contém uma linha para cada arquivo de um banco de dados, conforme armazenado no próprio banco de dados. |
|
Para ter mais informações, consulte sys.database_mirroring |
|
Para ter mais informações, consulte sys.database_principals |
|
Para ter mais informações, consulte sys.database_role_members |
|
Todos os bancos de dados em todos os esquemas |
|
Para ter mais informações, consulte sys.dm_exec_connections |
|
Para ter mais informações, consulte sys.dm_exec_sessions |
|
Para ter mais informações, consulte sys.dm_hadr_database_replica_states |
|
Para ter mais informações, consulte sys.dm_os_host_info |
|
Para ter mais informações, consulte sys.endpoints |
|
Para ter mais informações, consulte sys.indexes |
|
Para ter mais informações, consulte sys.languages |
|
Todos os esquemas |
|
Todos os logins e funções |
|
Para ter mais informações, consulte sys.sql_modules |
|
Compatibilidade do Babelfish limitada a uma única configuração somente leitura. |
|
Compatibilidade do Babelfish limitada a uma única configuração somente leitura. |
|
Para ter mais informações, consulte sys.sysprocesses |
|
Para ter mais informações, consulte sys.system_sql_modules |
|
Para ter mais informações, consulte sys.table_types |
|
Todas as tabelas em um esquema |
|
Para ter mais informações, consulte sys.xml_schema_collections |
O PostgreSQL implementa catálogos do sistema que são semelhantes às visualizações do catálogo de objetos do SQL Server. Para obter uma lista completa de catálogos do sistema, consulte o tópico sobre Catálogos do sistema
Exportações de DDL compatíveis com o Babelfish
Nas versões 2.4.0 e 3.1.0 do Babelfish, ele é compatível com exportações de DDL de várias ferramentas. Por exemplo, você pode usar essa funcionalidade do SQL Server Management Studio (SSMS) para gerar os scripts de definição de dados para vários objetos em um banco de dados Babelfish para Aurora PostgreSQL. Você pode então usar os comandos DDL gerados nesse script para criar os mesmos objetos em outro banco de dados Babelfish para Aurora PostgreSQL ou SQL Server.
O Babelfish é compatível com exportações de DDL para os objetos a seguir nas versões especificadas.
Lista de objetos | 2.4.0 | 3.1.0 |
---|---|---|
Tabelas de usuários | Sim | Sim |
Chaves primárias | Sim | Sim |
Chaves externas | Sim | Sim |
Restrições exclusivas | Sim | Sim |
Índices | Sim | Sim |
Restrições de verificação | Sim | Sim |
Visões | Sim | Sim |
Procedimentos armazenados | Sim | Sim |
Funções definidas pelo usuário | Sim | Sim |
Funções com valor de tabela | Sim | Sim |
Acionadores | Sim | Sim |
Tipos de dados definidos pelo usuário | Não | Não |
Tipos de tabela definidos pelo usuário | Não | Não |
Usuários | Não | Não |
Logins | Não | Não |
Sequências | Não | Não |
Funções | Não | Não |
Limitações com os DDLs exportados
-
Use hatches de escape antes de recriar os objetos com os DDLs exportados: o Babelfish não é compatível com todos os comandos no script DDL exportado. Use hatches de escape para evitar erros causados ao recriar os objetos dos comandos DDL no Babelfish. Para ter mais informações sobre hatches de escape, consulte Gerenciar o tratamento de erros do Babelfish com hatches de escape
-
Objetos contendo restrições CHECK com cláusulas COLLATE explícitas: os scripts com esses objetos gerados por meio de um banco de dados SQL Server têm agrupamentos diferentes, mas equivalentes, como no banco de dados Babelfish. Por exemplo, alguns agrupamentos, como sql_latin1_general_cp1_cs_as, sql_latin1_general_cp1251_cs_as e latin1_general_cs_as são gerados como latin1_general_cs_as, que é o agrupamento mais próximo do Windows.