Condividi tramite


SqlPackage per il database SQL in Microsoft Fabric

Si applica a:Database SQL in Microsoft Fabric

In questa esercitazione si apprenderà come usare SqlPackage nel database SQL in Fabric.

SqlPackage è un'interfaccia della riga di comando che fornisce la portabilità del database e le distribuzioni di database.

  • La portabilità (importazione/esportazione) di un database gestito in Azure o in Fabric garantisce che i dati siano portabili in altre piattaforme, tra cui SQL Server o Istanza gestita di SQL di Azure, se si vuole eseguire la migrazione in un secondo momento.
  • La stessa portabilità consente anche determinati scenari di migrazione tramite copie di database autonome (.bacpac) con operazioni di importazione/esportazione.

SqlPackage può anche consentire semplici distribuzioni di database di modifiche incrementali agli oggetti di database (nuove colonne in tabelle, modifiche alle stored procedure esistenti e così via).

  • SqlPackage può estrarre un .dacpac file contenente le definizioni degli oggetti in un database e pubblicare un .dacpac file per applicare lo stato dell'oggetto a un database nuovo o esistente.
  • L'operazione di pubblicazione si integra anche con i progetti SQL, che consente cicli di sviluppo offline e più dinamici per i database SQL.

Prerequisiti

Attrezzaggio

SqlPackage è disponibile per Windows, macOS e Linux come strumento dotnet. È possibile installarlo usando il comando seguente:

dotnet tool install --global Microsoft.SqlPackage

Come strumento dotnet globale, SqlPackage è disponibile nel terminale come sqlpackage da qualsiasi cartella.

Importare un database con SqlPackage

Un .bacpac è una copia portabile di un database, utile per alcuni scenari di migrazione e test. È possibile importarli .bacpac in un database SQL vuoto.

Nota

Un .bacpac oggetto non è un backup o una sostituzione per le funzionalità di backup/ripristino. Per altre informazioni sui backup nel database SQL di Infrastruttura, vedere Backup automatici nel database SQL in Microsoft Fabric e Ripristino da un backup nel database SQL in Microsoft Fabric.

  1. Se si usa un oggetto .bacpac dall'ambiente database SQL di Azure, potrebbe essere necessario modificare il database di origine per soddisfare la superficie di attacco T-SQL del database SQL di Fabric.

  2. Creare il nuovo database SQL in Fabric come di consueto tramite l'interfaccia Fabric.

  3. Copiare il stringa di connessione dalle impostazioni.

    Screenshot del portale di Infrastruttura che mostra la pagina Stringhe di connessione del database SQL.

  4. Usare il comando import dal terminale nella cartella sqlpackage. Specificare il proprietario <servername> e <database_name>.

    sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
    
    • Sostituire il stringa di connessione dalla finestra di dialogo Impostazioni database SQL.
    • Sostituire il sourcefile valore con il .bacpac nome (DatabaseName) e location nel computer locale.

Per altre informazioni sull'importazione, vedere Importazione di SqlPackage.

Esportare un database con SqlPackage

L'esportazione di è .bacpac l'operazione inversa, dove targetfile si trova e .bacpac si sourceconnectionstring trova nella finestra di dialogo Impostazioni database SQL, come nell'esempio precedente. Specificare il proprietario <servername> e <database_name>. Ad esempio:

sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial    Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"

Per altre informazioni sull'esportazione, vedere Esportazione di SqlPackage.

Estrarre e pubblicare

Diagramma del modo in cui i progetti di database SQL possono spostare le modifiche dello schema.

È .dacpac un file del modello di schema del database contenente le definizioni per le tabelle, le stored procedure e altri oggetti nel database di origine.

SqlPackage è in grado di distribuire un oggetto .dacpac in un nuovo database (vuoto) o di aggiornare in modo incrementale un database esistente in modo che corrisponda allo stato desiderato .dacpac .

  • L'estrazione crea un .dacpac file o sql da un database esistente.
  • La pubblicazione distribuisce un oggetto .dacpac in un database.

La sintassi di pubblicazione di SqlPackage è simile ai comandi di importazione/esportazione.