Obtention d'informations dans le catalogue système Babelfish - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Obtention d'informations dans le catalogue système Babelfish

Vous pouvez obtenir des informations sur les objets de base de données stockés dans votre cluster Babelfish en interrogeant la plupart des mêmes vues système que celles utilisées dans SQL Server. Chaque nouvelle version de Babelfish prend en charge davantage de vues système. Pour obtenir la liste des vues disponibles actuellement, consultez le tableau SQL Server system catalog views.

Ces vues système fournissent des informations issues du catalogue système (sys.schemas). Dans le cas de Babelfish, ces vues contiennent à la fois des schémas système SQL Server et PostgreSQL. Pour interroger Babelfish au sujet d'informations sur le catalogue système, vous pouvez utiliser le port TDS ou le port PostgreSQL, comme illustré dans les exemples suivants.

  • Interrogez le port T-SQL à l'aide de sqlcmd ou d'un autre client SQL Server.

    1> SELECT * FROM sys.schemas 2> GO

    Cette requête renvoie les schémas système SQL Server et Aurora PostgreSQL, comme illustré dans l'exemple suivant.

    name --------------------------------------------------------- demographic_dbo public sys master_dbo tempdb_dbo ...
  • Interrogez le port PostgreSQL à l'aide de psql ou pgAdmin. Cet exemple utilise la métacommande de schémas de liste psql (\dn) :

    babelfish_db=> \dn

    La requête renvoie le même jeu de résultats que celui renvoyé par sqlcmd sur le port T-SQL.

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

Catalogues système SQL Server disponibles dans Babelfish

Le tableau suivant fournit les vues SQL Server actuellement implémentées dans Babelfish. Pour plus d'informations sur les catalogues système dans SQL Server, consultez Vues de catalogue système (Transact-SQL) dans la documentation Microsoft.

Nom de la vue Description ou limite Babelfish (le cas échéant)

sys.all_columns

Toutes les colonnes de toutes les tables et vues

sys.all_objects

Tous les objets de tous les schémas

sys.all_sql_modules

L'union de sys.sql_modules et sys.system_sql_modules

sys.all_views

Toutes les vues de tous les schémas

sys.columns

Toutes les colonnes des tables et vues définies par l'utilisateur

sys.configurations

Prise en charge de Babelfish limitée à une seule configuration en lecture seule.

sys.data_spaces

Contient une ligne pour chaque espace de données. Il peut s'agir d'un groupe de fichiers, d'un schéma de partition ou d'un groupe de fichiers de données FILESTREAM.

sys.database_files

Vue par base de données contenant une ligne pour chaque fichier d'une base de données telle qu'elle est stockée dans la base de données elle-même.

sys.database_mirroring

Pour plus d'informations, consultez sys.database_mirroring dans la documentation Microsoft Transact-SQL.

sys.database_principals

Pour plus d'informations, consultez sys.database_principals dans la documentation Microsoft Transact-SQL.

sys.database_role_members

Pour plus d'informations, consultez sys.database_role_members dans la documentation Microsoft Transact-SQL.

sys.databases

Toutes les bases de données de tous les schémas

sys.dm_exec_connections

Pour plus d'informations, consultez sys.dm_exec_connections dans la documentation Microsoft Transact-SQL.

sys.dm_exec_sessions

Pour plus d'informations, consultez sys.dm_exec_sessions dans la documentation Microsoft Transact-SQL.

sys.dm_hadr_database_replica_states

Pour plus d'informations, consultez sys.dm_hadr_database_replica_states dans la documentation Microsoft Transact-SQL.

sys.dm_os_host_info

Pour plus d'informations, consultez sys.dm_os_host_info dans la documentation Microsoft Transact-SQL.

sys.endpoints

Pour plus d'informations, consultez sys.endpoints dans la documentation Microsoft Transact-SQL.

sys.indexes

Pour plus d'informations, consultez sys.indexes dans la documentation Microsoft Transact-SQL.

sys.languages

Pour plus d'informations, consultez sys.languages dans la documentation Microsoft Transact-SQL.

sys.schemas

Tous les schémas

sys.server_principals

Tous les identifiants et rôles

sys.sql_modules

Pour plus d'informations, consultez sys.sql_modules dans la documentation Microsoft Transact-SQL.

sys.sysconfigures

Prise en charge de Babelfish limitée à une seule configuration en lecture seule.

sys.syscurconfigs

Prise en charge de Babelfish limitée à une seule configuration en lecture seule.

sys.sysprocesses

Pour plus d'informations, consultez sys.sysprocesses dans la documentation Microsoft Transact-SQL.

sys.system_sql_modules

Pour plus d'informations, consultez sys.system_sql_modules dans la documentation Microsoft Transact-SQL.

sys.table_types

Pour plus d'informations, consultez sys.table_types dans la documentation Microsoft Transact-SQL.

sys.tables

Toutes les tables d'un schéma

sys.xml_schema_collections

Pour plus d'informations, consultez sys.xml_schema_collections dans la documentation Microsoft Transact-SQL.

PostgreSQL implémente des catalogues système semblables aux vues du catalogue d'objets SQL Server. Pour obtenir la liste complète des catalogues système, consultez System Catalogs dans la documentation PostgreSQL.

Exportations DDL prises en charge par Babelfish

À partir des versions 2.4.0 et 3.1.0 de Babelfish, Babelfish prend en charge les exportations DDL à l'aide de divers outils. Par exemple, vous pouvez utiliser cette fonctionnalité de SQL Server Management Studio (SSMS) pour générer les scripts de définition de données pour différents objets dans une base de données Babelfish for Aurora PostgreSQL. Vous pouvez ensuite utiliser les commandes DDL générées dans ce script pour créer les mêmes objets dans une autre base de données Babelfish for Aurora PostgreSQL ou SQL Server.

Babelfish prend en charge les exportations DDL pour les objets suivants dans les versions spécifiées.

Liste d'objets 2.4.0 3.1.0
Tables d'utilisateurs Oui Oui
Clés primaires Oui Oui
Clés étrangères Oui Oui
Contraintes uniques Oui Oui
Index Oui Oui
Contraintes de validation Oui Oui
Vues Oui Oui
Procédures stockées Oui Oui
Fonctions définies par l'utilisateur Oui Oui
Fonctions à valeur tabulaire Oui Oui
Déclencheurs Oui Oui
Types de données définis par l'utilisateur NonNon
Types de tables définis par l'utilisateur NonNon
Users NonNon
Connexions NonNon
Séquences NonNon
Rôles NonNon

Limites liées aux DDL exportées

  • Utiliser des trappes de secours avant de recréer les objets avec les DDL exportées : Babelfish ne prend pas en charge toutes les commandes du script DDL exporté. Utilisez des trappes de secours pour éviter les erreurs causées lors de la recréation des objets à partir des commandes DDL dans Babelfish. Pour plus d'informations sur les trappes de secours, consultez Gestion du traitement des erreurs Babelfish avec des trappes de secours.

  • Objets contenant des contraintes CHECK avec des clauses COLLATE explicites : les scripts contenant ces objets générés à partir d'une base de données SQL Server ont des classements différents mais équivalents à ceux de la base de données Babelfish. Par exemple, quelques classements, tels que sql_latin1_general_cp1_cs_as, sql_latin1_general_cp1251_cs_as et latin1_general_cs_as, sont générés sous la forme latin1_general_cs_as, qui est le classement Windows le plus proche.