SQL Server Essentials: Database di esempio di SQL Server

I database di esempio di SQL Server possono essere molto utili per imparare nuove tecniche o provare vari esempi di codice. In questo articolo, dettaglierò cosa puoi fare con i principali database di esempio di SQL Server, tra cui Northwind, AdventureWorks e WideWorldImporters. Ti mostrerò anche come trovare questi database di esempio di SQL Server e installarli.

Cosa sono i database di esempio di SQL Server?

I database di esempio di SQL Server contengono informazioni fittizie che possono essere utilizzate in modo sicuro per test e sviluppo. Tuttavia, nessun database di esempio è stato installato durante il processo di installazione di SQL Server dal SQL Server 2005 in poi.

Annuncio

Ad un certo punto, Microsoft ha ritenuto che i database di esempio fossero una potenziale esposizione alla sicurezza, ed è per questo che li ha rimossi dalla base di codice di SQL Server. Detto ciò, nel corso degli anni Microsoft ha fornito diversi database di esempio per il sistema di gestione di database relazionali SQL Server e Analysis Services.

I principali database di esempio disponibili oggi sono Pubs, Northwind, AdventureWorks e WideWorldImporters.

Come vedrai in tutto questo articolo, questi diversi database di esempio ti forniscono diversi tipi di dati che puoi utilizzare per i tuoi scenari di test e sviluppo.

Database di esempio Pubs e Northwind

Pubs è il primo database di esempio di un editore che è arrivato con SQL Server, ed è stato originariamente sviluppato da Sybase. Si basa su una casa editrice che tiene traccia di libri, autori e vendite.

Pubblicità

Il database di esempio Pubs era disponibile come opzione nel processo di installazione di SQL Server fino al rilascio di SQL Server 2005. Tuttavia, molti utenti di SQL Server pensavano che fosse troppo semplice per essere un buon esempio.

Per fornire un database di esempio più complesso, Microsoft ha reso disponibile il database Northwind con il rilascio di SQL Server 2000. È stato originariamente sviluppato dal team di Access, ed è basato su un’azienda di importazione ed esportazione di alimenti chiamata Northwind Traders.

Microsoft successivamente ha rimosso il database Northwind con il rilascio di SQL Server 2005. Tuttavia, gli utenti di SQL Server possono ancora scaricarli da Northwind and pubs Sample Databases for SQL Server 2000.

Il download è un file di installazione .msi chiamato SQL2000SampleDb.msi. Eseguendo il file di installazione si estraggono gli script del database T-SQL nella cartella predefinita (C:\SQL Server 2000 Sample Databases), come puoi vedere di seguito.

Pubblicità

You can still install the Northwind and Pubs sample databases (Image credit: Petri/Michael Otey)

Puoi installare i due esempi eseguendo lo script instpubs.sql per installare il campione Pubs, così come lo script instnwnd.sql per installare il campione Northwind. Gli script contengono tutto il codice necessario per creare e popolare le tabelle per ciascun database.

  • Per prima cosa, apri i file .sql utilizzando l’editor di query di SQL Server Management Studio (SSMS) come puoi vedere nell’immagine qui sotto.
Opening the .sql files for the two sample databases with SSMS’ Query Editor (Image credit: Petri/Michael Otey)
  • Fai clic sul pulsante verde Esegui per eseguire gli script.

Quando ho eseguito per la prima volta lo script instpubs.sql per installare il campione di Pubs, ho ricevuto l’errore “Impossibile trovare la stored procedure ‘sp_dboption'”. Questa stored procedure è stata rimossa da SQL Server a partire dal rilascio del SQL Server 2008. Tuttavia, l’eliminazione delle seguenti righe ha permesso allo script di essere eseguito senza errori.

execute sp_dboption 'pubs' ,'trunc. log on chkpt.' ,'true'
GO

Eseguendo lo script instnwd.sql per installare il campione di Northwinds ho ottenuto lo stesso errore “Impossibile trovare la stored procedure ‘sp_dboption'”. In questo caso, l’eliminazione delle seguenti righe ha permesso allo script di essere eseguito fino al termine.

exec sp_dboption 'Northwind','trunc. log on chkpt.','true'
exec sp_dboption 'Northwind','select into/bulkcopy','true'
GO

L’esecuzione di questi script T-SQL creerà e popolerà i database di esempio Pubs e Northwind. Successivamente, potrai utilizzarli come qualsiasi altro database di SQL Server.

I database di esempio AdventureWorks e AdventureWorksLT

A partire da SQL Server 2005, Microsoft ha rilasciato il database di esempio AdventureWorks, che era destinato a sostituire Pubs e Northwind. AdventureWorks è un database di esempio per un’azienda multinazionale di produzione e vendita di biciclette chiamata Adventure Works Cycles, e utilizza il sistema di denominazione dello schema utente di SQL Server introdotto da Microsoft con SQL Server 2005.

Le principali versioni relazionali dei database AdventureWorks sono AdventureWorks e AdventureWorksLT. Quest’ultimo è una versione più piccola e più semplice del database completo di AdventureWorks. Ci sono diverse versioni di questi database per ogni rilascio di SQL Server a partire da SQL Server 2008 R2. Tuttavia, finora non c’è stata una nuova versione per SQL Server 2022.

Gli esempi di AdventureWorks per le diverse versioni di SQL Server sono stati originariamente trovati su CodePlex, ma il sito CodePlex è stato chiuso nel 2017. Sono stati successivamente spostati su GitHub. La tabella qui sotto include i link per il download di tutte le versioni del database di esempio di AdventureWorks.

AdventureWorks sample database AdventureWorksLT sample database
AdventureWorks2019.bak AdventureWorksLT2019.bak
AdventureWorks2017.bak AdventureWorksLT2017.bak
AdventureWorks2016.bak AdventureWorksLT2016.bak
AdventureWorks2016_EXT.bak N/A
AdventureWorks2014.bak AdventureWorksLT2014.bak
AdventureWorks2012.bak AdventureWorksLT2012.bak
AdventureWorks2008R2.bak

Questi download sono file di backup completi del database (.bak) che puoi utilizzare per installare gli esempi di AdventureWorks. Puoi semplicemente scaricare il file .bak e poi utilizzare SSMS o l’istruzione RESTORE T-SQL per ripristinare il file di backup come database di SQL Server.

Nell’immagine qui sotto, puoi vedere che il dialogo di ripristino di SSMS per AdventureWorks2019 ti chiede il file .bak da ripristinare e chiede anche un nome per il database.

Restoring the AdventureWorks2019 sample database from a backup file (Image credit: Petri/Michael Otey)

Oltre agli esempi di database relazionali, Microsoft ha anche creato esempi di business intelligence/data warehousing per il database AdventureWorks chiamati AdventureWorksDW e AdventureWorksAS. Questi esempi possono essere utilizzati con SQL Server Analysis Services. Sono installati proprio come gli esempi relazionali scaricando e ripristinando un file .bak. Gli esempi BI si trovano nelle seguenti posizioni su GitHub:

Database di esempio WideWorldImporters

Con il rilascio di SQL Server 2016, Microsoft ha reso disponibile il nuovo database WideWorldImporters. Si tratta di un esempio di importatore e distributore all’ingrosso di articoli da regalo e può essere utilizzato per familiarizzare con le tabelle temporali, l’In-Memory OLTP, gli indici columnstore, la Sicurezza a Livello di Riga (RLS), il mascheramento dinamico dei dati (DDM) e altro ancora.

Ci sono diverse versioni del database relazionale WideWorldImporters per la versione on-premises di SQL Server 2016 e versioni successive, nonché per Azure SQL Database:

  • WideWorldImporters-Full.bak: Per l’edizione Enterprise di SQL Server 2016 e versioni successive. È nel formato del file di backup.
  • WideWorldImporters-Standard.bak: Per l’edizione Standard di SQL Server 2016 e versioni successive. È anche nel formato del file di backup.
  • WideWorldImporters-Full.bacpac: Questo è per il livello Premium di Azure SQL Database. Fornisce un database di esempio OLTP completo in formato BACPAC.
  • WideWorldImporters-Standard.bacpac – Questo è anche per il livello Standard del database SQL di Azure e fornisce un database di esempio OLTP di edizione standard in formato BACPAC.

Per installare il database di esempio WideWorldImporters su un sistema SQL Server locale, è possibile scaricare il file .bak e quindi utilizzare SSMS o T-SQL RESTORE per ripristinare il file di backup come database SQL Server. È possibile vedere il dialog di ripristino di SSMS per il database WideWorldImporter nella figura seguente.

Installing the WideWorldImporters sample database by restoring a backup file (Image credit: Petri/Michael Otey)

I vari file BACPAC possono essere utilizzati con SQL Server in locale o con Azure SQL Server. Per importare un file .bacpac come nuovo database SQL Server, è possibile utilizzare il SQL Server Management Studio.

  • Fare clic sul nodo Database e selezionare l’opzione Importa Applicazione Data-Tier dal menu contestuale.
  • Seguire i suggerimenti nella procedura guidata di importazione che è possibile vedere di seguito per importare il database di esempio dal file .bacpac.
Importing a .bacpac file as a new SQL Server database in SSMS (Image credit: Petri/Michael Otey)

Come ci si potrebbe aspettare, oltre agli esempi relazionali ci sono anche diversi esempi di data warehousing.

Per ulteriori dettagli sulla generazione di dati per il database di esempio, puoi consultare l’articolo su WideWorldImporters data generation su Microsoft Learn. Ci sono campioni di codice nel file samplescripts.zip che contengono script T-SQL che mostrano come utilizzare diverse funzionalità in questo database. Inoltre, c’è un file workloaddrivers.zip che contiene due programmi che possono simulare un carico di lavoro in esecuzione contro il database WideWorldImporters.

Riepilogo

In questo tutorial, hai appreso sui diversi database di esempio di Microsoft SQL Server, tra cui Northwind, AdventureWorks e WideWorldImporters. Questa guida dovrebbe aiutarti a decidere quali campioni potresti voler utilizzare per i tuoi test e sviluppo, e puoi trovare ulteriori informazioni nella documentazione di Microsoft SQL Server.

Articolo correlato:

Source:
https://petri.com/sql-server-sample-databases/