Définition de base de données SQL

Cet article fournit une répartition de la structure de définition pour les éléments de base de données SQL.

Formats pris en charge

Prise en charge dacpac et sqlproj formats des éléments de base de données SQL. Si aucun format n’est spécifié, les opérations sont définies par défaut sur dacpac.

Composant package d’application de la couche Données (dacpac)

La dacpac partie est un fichier qui contient le modèle de base de données, qui inclut tous les objets de base de données SQL tels que les tables, les vues et les procédures stockées. Le dacpac fichier est utilisé pour déployer et gérer le schéma de base de données de manière déclarative, en calculant dynamiquement les modifications nécessaires à la mise à jour de la base de données pour qu’elle corresponde au dacpac modèle.

Un fichier dacpac peut être créé à l’aide de projets SQL dans Visual Studio Code, l’utilitaire de ligne de commande SqlPackage ou d’autres outils de développement de base de données qui prennent en charge le format dacpac. En savoir plus sur les projets SQL et la création dacpac de fichiers dans la documentation des projets SQL ou l’article sql database dans Fabric sur SqlPackage.

Parties de définition pour dacpac le format

Ce tableau répertorie les dacpac parties de définition de base de données SQL.

Chemin d’accès du composant Définition type Obligatoire Descriptif
sqldb.dacpac Package d’application de la couche Données (dacpac) true Fichier dacpac (modèle de base de données)
.platform PlatformDetails (JSON) false Décrit les détails courants de l’élément

Exemple de charge utile de définition utilisant le format dacpac

{
  "definition": {
    "parts": [
      {
        "path": "sqldb.dacpac",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      },
      {
        "path": ".platform",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      }
    ]
  }
}

Partie projet de base de données SQL (sqlproj)

Un projet de base de données SQL Database est une représentation locale d’objets SQL qui comprennent le schéma d’une base de données unique, comme des tables, des procédures stockées ou des fonctions. Un projet de base de données SQL est généralement testé localement en le générant dans un dacpac fichier pour vérifier les erreurs avant de le déployer sur une base de données SQL cible. La structure d’un projet de base de données SQL dépend des objets de base de données, où la base de données SQL dans Fabric par défaut pour organiser les fichiers projet par schéma et type d’objet. Par exemple, une table nommée Table1 dans le dbo schéma serait représentée par un chemin d’accès de fichier .dbo/Tables/Table1.sql En savoir plus sur les projets SQL dans la documentation des projets SQL.

Parties de définition pour sqlproj le format

Ce tableau répertorie les sqlproj parties de définition de base de données SQL.

Chemin d’accès du composant Définition type Obligatoire Descriptif
sqldb.sqlproj Projet de base de données SQL true Il .sqlproj s’agit du fichier projet d’un projet Microsoft.Build.Sql. Il sera généré dans un dacpac fichier et déployé sur la base de données SQL cible. Un seul fichier projet SQL (.sqlproj) est accepté par définition.
**/*.sql Fichier SQL (Structured Query Language) false Un ou plusieurs fichiers de définition d’objet SQL. Tous les fichiers non explicitement exclus par le .sqlproj fichier sont inclus.
.sharedqueries/*.sql Fichier SQL (Structured Query Language) false Un ou plusieurs fichiers de requête SQL. Ces requêtes sont déployées sur la base de données en tant que requêtes partagées et sont disponibles dans l’éditeur. Le .sharedqueries dossier est exclu du fichier projet SQL et ces requêtes ne sont pas incluses dans le processus de génération.
.platform PlatformDetails (JSON) false Décrit les détails courants de l’élément

Exemple de charge utile de définition utilisant le format sqlproj

{
  "definition": {
    "parts": [
      {
        "path": "sqldb.sqlproj",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      },
      {
        "path": "dbo/Tables/Table1.sql",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      },
      {
        "path": ".sharedqueries/query.sql",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      },
      {
        "path": ".platform",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      }
    ]
  }
}