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.
Comprendre les paramètres de conversion de SQL Server vers PostgreSQL
Les paramètres de conversion SQL Server vers PostgreSQL dans la conversion de schéma DMS sont les suivants :
-
Pour convertir les objets de base de données applicables à l'aide de l'IA générative, activez le paramètre IA générative. Les objets convertis avec succès à l'aide de l'IA générative seront clairement identifiés grâce à l'élément d'action 7744, qui stipule : « Cette conversion utilise des modèles d'apprentissage automatique qui génèrent des prédictions basées sur des modèles de données. » Pour de plus amples informations, veuillez consulter Conversion d'objets de base de données grâce à l'IA générative.
-
Dans SQL Server, vous pouvez utiliser des index portant le même nom dans différentes tables. Toutefois, dans PostgreSQL, tous les noms d’index que vous utilisez dans le schéma doivent être uniques. Pour vous assurer que la conversion de schéma DMS génère des noms uniques pour tous vos index, sélectionnez Générer des noms uniques pour les index.
-
PostgreSQL versions 10 et antérieures ne prend pas en charge les procédures. Si vous n'êtes pas habitué à utiliser les procédures dans PostgreSQL AWS DMS , vous pouvez convertir les procédures SQL Server en fonctions PostgreSQL. Pour ce faire, sélectionnez Convertir les procédures en fonctions.
-
Votre base de données SQL Server source peut stocker le résultat de
EXEC
dans une table. La conversion de schéma DMS crée des tables temporaires et une procédure supplémentaire pour émuler cette fonctionnalité. Pour utiliser cette émulation, sélectionnez Créer des routines supplémentaires pour gérer les jeux de données ouverts. -
Vous pouvez définir le modèle à utiliser pour les noms de schéma dans le code converti. Pour Noms de schémas, choisissez l’une des options suivantes :
-
DB : utilise le nom de base de données SQL Server en tant que nom de schéma dans PostgreSQL.
-
SCHEMA : utilise le nom de schéma SQL Server en tant que nom de schéma dans PostgreSQL.
-
DB_SCHEMA : utilise une combinaison des noms de schéma et de base de données SQL Server en tant que nom de schéma dans PostgreSQL.
-
-
Vous pouvez conserver la majuscule dans les noms des opérandes sources. Pour éviter la conversion des noms d'opérandes en minuscules, sélectionnez Éviter de convertir les noms en minuscules pour les opérations qui font la distinction entre majuscules et minuscules. Cette option n'est applicable que si la fonction de distinction majuscules/minuscules est activée dans la base de données source.
-
Vous pouvez conserver les noms de paramètre de la base de données source. La conversion de schéma DMS peut ajouter des guillemets doubles aux noms des paramètres dans le code converti. Pour ce faire, sélectionnez Conserver les noms des paramètres d’origine.
-
Vous pouvez conserver la longueur des paramètres de routine de votre base de données source. La conversion de schéma DMS crée des domaines et les utilise pour spécifier la longueur des paramètres de routine. Pour ce faire, sélectionnez Conserver la longueur des paramètres.
-
Pour convertir des objets intégrés non pris en charge en objets stub, activez le paramètre Convertir les objets intégrés non pris en charge en objets stub :
-
Lorsqu'il est activé, DMS SC remplace les objets intégrés non pris en charge par les objets stub correspondants dans la base de données cible. Cette fonctionnalité convertit les sections de code qui seraient normalement incluses dans le problème de migration 7811 ou 7904. Il crée des objets stub en fonction du type des objets intégrés source
PROCEDURE
pour les procédures, les vues ouVIEW
les tables.La conversion d'un objet de base de données source avec un appel d'un objet non pris en charge entraîne un appel d'un objet stub et un problème de migration 7822.
Vous pouvez choisir de créer des objets stub dans un schéma distinct en activant l'option Créer des objets stub dans un schéma distinct. Lorsque cette option est sélectionnée, les objets stub sont créés dans un schéma spécial nommé
aws_sqlserver_stub
dans la base de données cible. S'ils ne sont pas sélectionnés, ils sont créés dans le même schéma que les objets appelants. -
Les routines Stub sont nommées en fonction du nom complet de la routine intégrée d'origine. Pour les vues stub, la convention de dénomination inclut le nom
system_schema_name$builtin_view_name
du schéma du système.Lors de la reconversion, le DMS SC vérifie la présence de routines stub existantes dans la base de données cible. Si une routine portant le même nom et les mêmes paramètres d'entrée existe déjà, elle n'est pas remplacée.
Après la conversion, passez en revue et implémentez le code personnalisé pour les routines stub selon les besoins.
-
-
CITEXT
le type de données pour tous les types de données de chaîne définis dans DMS Schema Conversion inclut les éléments suivants :-
Pour utiliser le
CITEXT
type de données pour des opérations sur des chaînes qui ne distinguent pas les majuscules des minuscules lors de la conversion de SQL Server vers PostgreSQL, activez le paramètre Utiliser CITEXT pour tous les types de données de chaîne. Cette option permet de maintenir un comportement cohérent lors de la migration d'un serveur SQL ne distinguant pas les majuscules et minuscules vers un environnement PostgreSQL distinguant les majuscules et minuscules. -
Lorsqu'il est activé, le DMS SC convertit tous les types de données de chaîne pertinents de la base de données source SQL Server vers PostgreSQL.
CITEXT
Cela élimine le besoin d'appels de fonction LOWER () explicites dans les conditions et convertit automatiquement les expressions de chaîne dans les opérations conditionnelles enCITEXT
. -
Pour déterminer si votre instance SQL Server distingue les majuscules et minuscules, exécutez la requête suivante :
SELECT SERVERPROPERTY('COLLATION');
Un résultat contenant « CI » indique l'absence de distinction majuscules/majuscules, tandis que « CS » indique la distinction majuscules/minuscules.
-
La
CITEXT
conversion peut ne pas s'appliquer dans les scénarios où des paramètres de classement explicites distinguant les majuscules et minuscules sont utilisés au niveau du serveur, de la base de données ou des colonnes.Pour utiliser cette fonctionnalité, assurez-vous que le
CITEXT
module est installé et disponible dans votre base de données PostgreSQL cible. -
Lorsque vous utilisez la conversion de
CITEXT
type de données, tenez compte des meilleures pratiques suivantes :-
Activez cette fonctionnalité lors de la migration depuis un serveur SQL ne distinguant pas les majuscules des minuscules afin de maintenir un comportement cohérent dans PostgreSQL.
-
Vérifiez le code de votre application pour vous assurer qu'il ne repose pas sur des opérations de chaîne faisant la distinction majuscules/majuscules.
-
Testez soigneusement votre application après la migration pour vérifier que le comportement insensible aux majuscules et minuscules est maintenu comme prévu.
-
-