Partage via


Assistant Générer des scripts

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Vous pouvez utiliser l’Assistant Générer des scripts pour créer des scripts afin de transférer une base de données entre des instances de SQL Server, Azure SQL Database, ou Azure SQL Managed Instance.

Vous pouvez générer des scripts pour une base de données SQL Server dans votre réseau local ou à partir d'Azure SQL. Les scripts générés peuvent être exécutés sur une autre instance de SQL Server ou sur Azure SQL. Vous pouvez créer des scripts pour une base de données entière ou les limiter à des objets spécifiques.

Pour un tutoriel plus détaillé sur l’utilisation de l’Assistant Générer des scripts, consultez Tutoriel : Assistant Générer des scripts.

Prérequis

Les bases de données source et cible peuvent se trouver sur Azure SQL Database ou Azure SQL Managed Instance, ou sur une instance du moteur de base de données exécutant SQL Server 2005 (9.x) ou versions ultérieures.

autorisations

L’autorisation minimale pour générer des scripts est l’appartenance au rôle de base de données fixe db_ddladmin sur la base de données d’origine.

Utiliser l’Assistant Générer des scripts

  1. Dans l' Explorateur d'objets, développez le nœud pour l'instance qui contient la base de données devant faire l'objet d'un script.

  2. Cliquez avec le bouton droit sur la base de données pour laquelle vous souhaitez créer un script et sélectionnez Tâches>Générer des scripts.

    Capture d’écran de l’Assistant Générer des scripts.

  3. Renseignez les boîtes de dialogue de l'Assistant :

Page Introduction

Cette page décrit les étapes de la création d’un script.

Ne plus afficher cette page : permet d’ignorer cette page la prochaine fois que vous démarrez l’Assistant Générer des scripts.

Capture d’écran de la page Introduction.

Page Sélectionner les objets

Utilisez cette page pour choisir les objets que vous souhaitez inclure dans les scripts générés par cet Assistant.

Générer un script pour la base de données entière - Sélectionnez cette option pour générer des scripts pour tous les objets de la base de données et pour inclure un script pour la base de données elle-même.

Capture d’écran de l’option Générer un script de la base de données entière.

Sélectionner des objets de base de données spécifiques - Sélectionnez cette option pour limiter l’action de l’Assistant à la génération de scripts uniquement pour les objets de la base de données que vous choisissez :

  • Objets de base de données - Sélectionnez au moins un objet à inclure dans le script.

  • Sélectionner tout - Coche toutes les cases disponibles.

  • Désélectionner tout - Décoche toutes les cases. Vous devez activer au moins un objet de base de données pour poursuivre.

    Capture d’écran d’un script spécifique.

Page Définir les options de script

Utilisez cette page pour indiquer si vous souhaitez que l’Assistant enregistre les scripts à l’emplacement de votre choix.

Options - Si vous souhaitez que l’Assistant enregistre les scripts à l’emplacement de votre choix, sélectionnez Enregistrer les scripts à un emplacement spécifique. Vous pourrez exécuter les scripts ultérieurement sur une instance du moteur de base de données ou sur SQL Database.

Enregistrer les scripts à un emplacement spécifique - Permet d’enregistrer un ou plusieurs fichiers de script Transact-SQL à un emplacement que vous spécifiez.

Capture d’écran de l’option Enregistrer en tant que notebook.

  • Enregistrer comme notebook - Permet d’enregistrer le script dans un ou plusieurs fichiers .sql. Sélectionnez le bouton Parcourir ( ... ) pour spécifier le nom et l’emplacement du fichier.

  • Enregistrer comme fichier de script - Permet d’enregistrer le script dans un ou plusieurs fichiers .sql. Sélectionnez le bouton Parcourir (...) pour spécifier le nom et l’emplacement du fichier. Activez la case à cocher Remplacer le fichier existant pour remplacer le fichier s'il en existe déjà un du même nom. Sélectionnez Fichier de script unique ou Un fichier de script par objet pour spécifier comment les scripts doivent être générés. Sélectionnez Texte Unicode ou Texte ANSI pour spécifier le type de texte qui doit être utilisé dans le script.

  • Enregistrer dans le Presse-papiers - Permet d’enregistrer le script Transact-SQL dans le Presse-papiers.

  • Ouvrir dans une nouvelle fenêtre de requête - Permet de générer le script dans une fenêtre de l’Éditeur de requête du moteur de base de données. Si aucune fenêtre d'éditeur n'est ouverte, une nouvelle fenêtre d'éditeur s'ouvre comme cible du script.

  • Avancé : permet d’afficher la boîte de dialogue Options avancées dans laquelle vous pouvez sélectionner des options de script avancées.

Page Options de script avancées

Utilisez cette page pour spécifier la façon dont vous souhaitez que cet Assistant génère des scripts. De nombreuses options sont disponibles. Les options sont grisées si elles ne sont pas prises en charge par la version de SQL Server ou SQL Database spécifiée dans Type de moteur de base de données.

Capture d’écran des Options avancées.

Options - Spécifiez les options avancées en sélectionnant une valeur dans la liste des paramètres disponibles située à droite de chaque option.

Général - Les options suivantes s’appliquent au script entier.

  • Remplissage ANSI : inclut ANSI PADDING ON dans le script. La valeur par défaut est False.

  • Ajouter au fichier - Lorsque cette option a la valeur True, ce script est ajouté au bas d’un script existant, spécifié sur la page Définir les options de script . Lorsqu'elle a la valeur False, le nouveau script remplace un script précédent. La valeur par défaut est False.

  • Vérifier l’existence de l’objet – Quand elle a la valeur True, cette option ajoute la vérification d’existence avant de générer l’instruction CREATE pour vos objets SQL. Par exemple : tables, vues, fonctions ou procédures stockées. L’instruction CREATE est incluse dans une instruction IF. Si vous savez que votre cible est propre, le script est beaucoup plus propre. Si vous ne vous attendez pas à ce que les objets existent dans la cible, vous obtenez une erreur. La valeur par défaut est False.

  • Continuer l’exécution du script en cas d’erreur : quand la valeur est False, l’exécution du script s’arrête en cas d’erreur. Quand la valeur est True, l’exécution du script continue. La valeur par défaut est False.

  • Convertir les UDDT en types de base - Lorsque cette option a la valeur True, les types de données définis par l’utilisateur (UDDT) sont convertis en types de données de base sous-jacents, ceux-là même qui ont été utilisés pour les créer. Utilisez True lorsque l’UDDT n’existe pas dans la base de données où le script s’exécute. Lorsque cette option a la valeur False, les UDDT sont utilisés. La valeur par défaut est False.

  • Générer un script pour les objets dépendants - Génère un script pour tout objet dont la présence est requise lorsque le script de l’objet sélectionné est exécuté. La valeur par défaut est True pour l’option Générer un script de la base de données entière et False pour l’option Sélectionner des objets spécifiques de la base de données.

  • Inclure des en-têtes descriptifs - Lorsque cette option a la valeur True, des commentaires descriptifs sont ajoutés au script afin de le séparer en sections pour chaque objet. La valeur par défaut est False.

  • Inclure IF NOT EXISTS : lorsque cette option a la valeur True, le script inclut une instruction pour vérifier si l’objet existe déjà dans la base de données et n’essaie pas de créer un nouvel objet si celui-ci existe déjà. La valeur par défaut est False.

  • Inclure des noms de contraintes système - Lorsque cette option a la valeur False, la valeur par défaut des contraintes nommées automatiquement sur la base de données d’origine est renommée automatiquement sur la base de données cible. Lorsqu'elle a la valeur True, les contraintes ont le même nom sur les bases de données cible et d'origine.

  • Inclure des instructions non prises en charge : lorsque cette option a la valeur False, le script ne contient pas d’instructions pour les objets non pris en charge par la version du serveur ou le type de moteur sélectionné. Si la valeur est True, le script contient les objets non pris en charge. Chaque instruction concernant un objet non pris en charge est accompagnée d'un commentaire stipulant que l'instruction doit être modifiée avant que le script puisse être exécuté sur la version de SQL Server ou le type de moteur sélectionné. La valeur par défaut est False.

  • Noms d’objet de qualification de schéma - Inclut le nom de schéma dans le nom des objets créés. La valeur par défaut est True.

  • Liaisons de scripts - Génère un script pour lier les objets de règle et les objets par défaut. La valeur par défaut est False. Pour plus d’informations, consultez CREATE DEFAULT (Transact-SQL) et CREATE RULE (Transact-SQL).

  • Classement de script - Inclut des informations de classement dans le script. La valeur par défaut est False. Pour plus d’informations, voir Classement et prise en charge d’Unicode.

  • Valeurs de script par défaut - Inclut les objets par défaut utilisés pour définir les valeurs par défaut dans les colonnes de table. La valeur par défaut est True. Pour plus d’informations, consultez Spécifier des valeurs par défaut pour les colonnes..

  • Générer un script de création/suppression (DROP/CREATE) - Avec Générer un script de création (CREATE), les instructions Transact-SQL sont incluses pour créer les objets. Avec Générer un script de suppression (DROP), les instructions Transact-SQL sont incluses pour supprimer les objets. Avec Générer un script de création/suppression (DROP/CREATE), l’instruction de suppression Transact-SQL est incluse dans le script, suivie de l’instruction de création, pour chaque objet faisant l’objet d’un script. La valeur par défaut est Générer un script de création (CREATE) .

  • Générer un script pour les propriétés étendues - Inclut les propriétés étendues dans le script, si l’objet en possède. La valeur par défaut est True.

  • Générer un script pour le type de moteur - Crée un script qui peut être exécuté sur le type sélectionné de SQL Database ou d’une instance du moteur de base de données SQL Server. Les objets non pris en charge sur le type spécifié ne sont pas inclus dans le script. La valeur par défaut est le type du serveur d'origine.

  • Générer un script pour la version du serveur - Crée un script qui peut être exécuté sur la version sélectionnée de SQL Server. Les fonctionnalités qui sont nouvelles dans une version ne peuvent pas faire l’objet d’un script pour les versions antérieures. La valeur par défaut est la version du serveur d'origine.

  • Générer un script pour les connexions - Lorsque l’objet pour lequel générer le script est un utilisateur de base de données, cette option crée les connexions desquelles l’utilisateur dépend. La valeur par défaut est False.

  • Générer un script pour les autorisations au niveau objet - Inclut des scripts pour définir l’autorisation sur les objets de la base de données. La valeur par défaut est False.

  • Générer un script pour les statistiques : lorsque cette option a la valeur Générer un script pour les statistiques, elle inclut l’instruction CREATE STATISTICS pour recréer des statistiques sur l’objet. L'option Générer un script des statistiques et des histogrammes crée également des informations d'histogramme. La valeur par défaut est Ne pas générer de script des statistiques. Pour plus d’informations, consultez CREATE STATISTICS (Transact-SQL).

  • Script USE DATABASE : ajoute l’instruction USE DATABASE au script. Pour vous assurer que les objets de base de données sont créés dans la base de données correcte, incluez l'instruction USE DATABASE. Si vous prévoyez d’utiliser le script dans une autre base de données, sélectionnez False pour omettre l’instruction USE DATABASE. La valeur par défaut est True. Pour plus d’informations, consultez USE (Transact-SQL).

  • Types de données à inclure dans le script : sélectionne ce qui doit être inclus dans le script : Données uniquement, Schéma uniquement ou les deux. La valeur par défaut est Schéma uniquement.

Options de table/vue - Les options suivantes s’appliquent uniquement aux scripts des tables et des vues.

  • Générer le script de suivi des modifications : génère le script de suivi des modifications s’il est activé sur la base de données d’origine ou sur des tables dans la base de données d’origine. La valeur par défaut est False. Pour plus d’informations, consultez À propos du suivi des modifications (SQL Server).

  • Générer un script pour les contraintes CHECK : ajoute des contraintes CHECK au script. La valeur par défaut est True. Les contraintes CHECK exigent que les données entrées dans une table satisfassent à certaines conditions spécifiées. Pour plus d’informations, consultez Contraintes uniques et contraintes de validation.

  • Générer un script des options de compression de données : génère un script des options de compression de données si elles sont configurées sur la base de données d’origine ou sur des tables dans la base de données d’origine. Pour plus d’informations, consultez Compression de données. La valeur par défaut est False.

  • Générer un script pour les clés étrangères - Ajoute des clés étrangères au script. La valeur par défaut est True. Les clés étrangères indiquent et garantissent les relations entre les tables.

  • Générer un script pour les index de recherche en texte intégral - Génère un script pour la création d’index de recherche en texte intégral. La valeur par défaut est False.

  • Générer un script pour les index - Génère un script pour la création d’index. La valeur par défaut est True pour l’option Générer un script de la base de données entière et False pour l’option Sélectionner des objets spécifiques de la base de données. Les index permettent de trouver rapidement des données.

  • Générer un script pour les clés primaires - Génère un script pour la création de clés primaires sur les tables. La valeur par défaut est True. Les clés primaires identifient de manière unique chaque ligne d'une table.

  • Générer un script pour les déclencheurs - Génère un script pour la création de déclencheurs DML sur les tables. La valeur par défaut est False. Un déclencheur DML est une action programmée pour s'exécuter lorsqu'un événement de langage de manipulation de données (DML, Data Manipulation Language) se produit sur le serveur de base de données. Pour plus d'informations, consultez DML Triggers.

  • Générer un script pour les clés uniques - Génère un script pour la création de clés uniques sur les tables. Les clés uniques empêchent l'entrée de données dupliquées. La valeur par défaut est True. Pour plus d’informations, consultez Contraintes uniques et contraintes de validation.

Page de résumé

Capture d’écran du résumé GS.

Cette page résume les options que vous avez sélectionnées dans cet Assistant. Pour modifier une option, sélectionnez Précédent. Pour commencer à générer des scripts, sélectionnez Suivant.

Vérifier vos sélections : affiche les sélections que vous avez effectuées pour chaque page de l’Assistant. Développez un nœud pour voir les options sélectionnées pour la page correspondante.

Page Enregistrer les scripts

Utilisez cette page pour contrôler la progression de l'Assistant.

Détails - Affiche la colonne Action pour voir la progression de l’Assistant. Une fois que l’Assistant a généré les scripts, il les enregistre dans un fichier. Quand chacune de ces étapes est terminée, sélectionnez la valeur dans la colonne Résultat pour voir le résultat de l’étape correspondante.

Enregistrer le rapport - Sélectionnez pour enregistrer les résultats de la progression de l’Assistant dans un fichier.

Annuler : sélectionnez pour fermer l’Assistant avant la fin du traitement ou si une erreur se produit.

Terminer : sélectionnez pour fermer l’Assistant une fois le traitement terminé ou si une erreur se produit.

Enregistrer les scripts

Capture d’écran de l’option Terminer.

Si tous les paramètres sont corrects, votre configuration se termine correctement.

Générer des scripts sur Azure Synapse Analytics

Si la syntaxe générée par l’utilisation de « Générer un script comme... » ne ressemble pas à la syntaxe Azure Synapse Analytics ou si vous recevez un message d’erreur, vous devrez peut-être configurer vos options de script dans SQL Server Management Studio en fonction d’Azure Synapse Analytics.

Comment définir les options de script par défaut sur SQL Data Warehouse

Pour générer des scripts sur des objets avec la syntaxe Azure Synapse Analytics, définissez l’option de script par défaut sur Azure Synapse Analytics comme suit :

  1. Sélectionnez Outils, puis Options.
  2. Sélectionnez Explorateur d’objets SQL Server et Scripts.
  3. Sous Options de version, définissez l’option Faire correspondre les paramètres de script à la source sur Faux.
    1. Définissez Script pour le type de moteur de base de données sur Édition Microsoft Azure SQL Database.
    2. Pour les pools SQL dédiés dans Azure Synapse Analytics, définissez Script pour l’édition du moteur de base de données sur Édition Microsoft Azure SQL Data Warehouse.
  4. Cliquez sur OK.

Guide pratique pour générer des scripts pour SQL Data Warehouse quand il ne s’agit pas de l’option de script par défaut

Si vous avez défini Azure Synapse Analytics comme option de script par défaut, comme indiqué précédemment, vous pouvez ignorer ces instructions. Toutefois, si vous choisissez d’utiliser d’autres options de script par défaut, vous risquez de rencontrer une erreur. Pour éviter les erreurs, procédez comme suit pour générer des scripts pour Azure Synapse Analytics :

  1. Dans Explorateur d’objets, cliquez avec le bouton droit sur votre pool SQL dédié sous Bases de données.
  2. Sélectionnez Générer des scripts.
  3. Sélectionnez les objets pour lesquels un script doit être créé.
  4. Dans Options de script, sélectionnez Avancé. Sous Général, définissez :
    1. Script pour le type de moteur de base de données : Microsoft Azure SQL Database.
    2. Script pour l'édition du moteur de base de données : Édition Microsoft Azure SQL Data Warehouse.
  5. Sélectionnez Enregistrer des scripts, puis Terminer.

Les options définies à l’étape 4 ne sont pas mémorisées. Si vous préférez qu’elles le soient, suivez les instructions données dans Comment définir les options de script par défaut sur SQL Data Warehouse.