Fornitura di database di alta qualità utilizzando Visual Studio 2022
Questo corso di due giorni con istruttore fornisce agli studenti le conoscenze e le competenze per sviluppare, testare e fornire in modo efficace database SQL Server moderni. Gli studenti scopriranno come gestire le modifiche allo schema di un database, garantire la qualità tramite test unitari T-SQL e analisi statica del codice e automatizzare la creazione e la distribuzione di database SQL Server e Azure SQL.
Chi dovrebbe seguire questo corso?
Questo corso è destinato agli sviluppatori e agli amministratori di database che lavorano con versioni moderne di SQL Server o Azure SQL. Troveranno utile anche gli sviluppatori di applicazioni che si occupano della scrittura e del test del codice T-SQL e dell'utilizzo dei dati di test.
Vantaggi
Questo corso offre diversi obiettivi e vantaggi di apprendimento
- Descrivi SQL Server Data Tools (SSDT) e come può essere utilizzato
- Distinguere tra sviluppo SSDT, SSIS, SSAS e SSRS
- Spiegare lo sviluppo agile del database
- Comprendi le versioni supportate di SQL Server e Azure SQL
- Distinguere tra sviluppo connesso e sviluppo disconnesso
- Usa SQL Server Object Explorer (SSOX) per lo sviluppo di database
- Usa l'editor T-SQL, il debugger e IntelliSense per lo sviluppo di database
- Contrasto tra sviluppo imperativo e dichiarativo
- Descrivi le tecniche di database agili
- Creare e gestire un progetto di database SQL Server
- Pensa allo schema come al codice sorgente
- Confronta Solution Explorer e SQL Server Object Explorer
- Importazione di uno schema di database
- Importazione di un'applicazione a livello di dati (.dacpac)
- Importa script T-SQL
- Trova e risolvi le dipendenze tra database
- Fai riferimento a un progetto di database o .dacpac
- Comprendi il ciclo di vita dello sviluppo del database di SSDT
- Usa un progetto di database per eseguire varie attività di sviluppo
- Crea e configura un progetto Azure DevOps per SSDT
- Usa Git e Azure Repos per gestire le modifiche allo schema
- Crea e clona un repository Git
- Effettua il commit, il pull, il push e sincronizza le modifiche utilizzando Visual Studio
- Confronta e sincronizza le modifiche allo schema
- Creare e utilizzare un'istantanea del progetto (.dacpac)
- Confronta e sincronizza le modifiche ai dati
- Descrivere i principi dei test unitari di SQL Server
- Crea un progetto di unit test in Visual Studio
- Procedure, funzioni e trigger memorizzati nel test unitario
- Usa gli script di inizializzazione, pre/post-test e pulizia per semplificare i test
- Distinguere tra asserzioni T-SQL e condizioni di test
- Genera automaticamente test e dati di test
- Crea test unitari negativi
- Usa TSQLt per i test unitari di SQL Server
- Usa l'analisi statica del codice per trovare problemi comuni di codifica SQL
- Configurare, visualizzare e opzionalmente sopprimere i messaggi di analisi dei messaggi
- Progettazione di database SQL con comandi di refactoring SSDT
- Comprendi e sfrutta il registro di refactoring
- Creazione e convalida di un progetto di database
- Distribuzione/pubblicazione di un progetto di database su SQL Server
- Usa variabili e script personalizzati durante la creazione
- Usa eventi e azioni di costruzione durante la creazione
- Comprendi i tipi avanzati di progetti di database
- Usa Azure Pipelines per automatizzare la creazione, la distribuzione e il test dei database
- Configura e utilizza agenti di pipeline ospitati autonomamente per la creazione e il rilascio
- Esegui test unitari di SQL Server in una pipeline
- Pratica l'integrazione continua (CI)
- Pratica la distribuzione continua (CD)
Programma
1. Sviluppo agile di database
- Panoramica sullo sviluppo di database agili
- Sfide e ostacoli all'agilità
- Panoramica di SQL Server Data Tools (SSDT)
- Sviluppo connesso e disconnesso
- Sviluppo imperativo vs. sviluppo dichiarativo
- Tecniche di database agili
- Hands-on
2. Progetti di database SQL Server
- Creazione di un progetto di database SQL Server
- Trattare lo schema come codice sorgente
- Utilizzo di SQL Server Object Explorer
- Importazione dello schema del database
- Importazione di applicazioni a livello di dati (.dacpac)
- Importazione di script
- Gestione delle dipendenze tra database
- Riferimento a un database e a un file .dacpac
- Hands-on
3. Gestione delle modifiche allo schema
- Panoramica di Azure DevOps
- Panoramica di Azure Repos
- Usare Git per gestire le modifiche allo schema
- Clonazione, committenza, invio e estrazione
- Confronto degli schemi e sincronizzazione delle modifiche
- Confronto dei dati e sincronizzazione delle modifiche
- Ripristino delle modifiche con Git
- Ripristino delle modifiche utilizzando le istantanee del progetto
- Hands-on
4. Garantire un design di alta qualità
- Principi di test delle unità di database
- Livelli di test delle unità di database
- Test unitari di SQL Server
- Progettista di test unitari di database
- Asserzioni T-SQL e condizioni di test
- Utilizzo di TSQLt per i test unitari di SQL Server
- Analisi statica del codice
- Strumenti di refactoring del database
- Hands-on
5. Costruzione e distribuzione
- Creazione del progetto di database
- Utilizzo di eventi di pre-compilazione e post-compilazione
- Inclusi script di compilazione aggiuntivi
- Utilizzo delle azioni di compilazione
- Utilizzo della sandbox isolata LocalDB
- Distribuzione delle modifiche a SQL Server
- Creazione e utilizzo di profili di pubblicazione
- Utilizzo di script pre e post-distribuzione
- Utilizzo delle variabili SQLCMD all'interno degli script
- Costruzione/implementazione di progetti compositi
- Creazione/distribuzione di oggetti SQL CLR
- Panoramica di Azure Pipelines
- Utilizzo di una pipeline di compilazione automatizzata
- Praticare l'integrazione continua (CI)
- Utilizzo di una pipeline di rilascio automatizzata
- Esecuzione di test nella pipeline di rilascio
- Praticare la distribuzione continua (CD)
- Hands-on
Prerequisiti richiesti
I partecipanti devono avere esperienza nello sviluppo, nel test e nella distribuzione di database SQL Server.
Prerequisiti utili
L'esperienza di lavoro su un progetto di sviluppo basato sul team e la familiarità con il ciclo di vita e le pratiche di sviluppo della propria organizzazione saranno utili, ma non sono richieste.