מהות SQL Server: מסדי נתונים דוגמיים של SQL Server

בסיסי נתונים לדוגמא של SQL Server יכולים להיות מאוד שימושיים ללמידת טכניקות חדשות או לניסוי של דוגמאות של קוד. במאמר זה, אני אפרט מה ניתן לעשות עם בסיסי הנתונים לדוגמא העיקריים של SQL Server כולל Northwind, AdventureWorks ו- WideWorldImporters. אני גם אראה לך כיצד למצוא את בסיסי הנתונים לדוגמא של SQL Server הללו ולהתקין אותם.

מהם בסיסי הנתונים לדוגמא של SQL Server?

בסיסי הנתונים לדוגמא של SQL Server מכילים מידע בדיוני שניתן להשתמש בו בבטחה לצורך בדיקה ופיתוח. אך, לא הותקנו בסיסי נתונים לדוגמא במהלך תהליך ההתקנה של SQL Server מאז SQL Server 2005.

פרסומת

במקום מסוים, מיקרוסופט הרגישה כי בסיסי נתונים דוגמתיים הם חשיפת אבטחה פוטנציאלית, ולכן הם הסירו אותם מבסיס הקוד של שרת SQL. עם זאת, לאורך השנים מיקרוסופט סיפקה מספר בסיסי נתונים דוגמתיים למערכת ניהול בסיסי נתונים רצופים ו־שירותי ניתוח.

הבסיסי נתונים הדוגמתיים העיקריים הזמינים היום הם Pubs, Northwind, AdventureWorks ו־WideWorldImporters.

כפי שתראו בכתבה זו, בסיסי הנתונים הדוגמתיים השונים הללו מספקים לך סוגים שונים של נתונים שאתה יכול להשתמש בהם למטרות בדיקה ופיתוח.

בסיסי נתונים דוגמתיים של Pubs ו־Northwind

פאבס הוא הבסיס הנתונים הדוגמתי הראשון של חברת ההוצאה לאור שבא עם שרת SQL, והוא פותח מקורית על ידי Sybase. הוא מבוסס על מעקב אחר ספרים, סופרים ומכירות.

פרסומת

בסיס הנתונים הדוגמתי של Pubs היה זמין כאפשרות כחלק מתהליך ההתקנה של SQL Server עד לגרסת 2005. עם זאת, רבים ממשתמשי שרת SQL חשבו שהוא פשוט מדי כדי להיות בסיס נתונים דוגמתי טוב.

כדי לספק בסיס נתונים דוגמתי מורכב יותר, מיקרוסופט עשתה את בסיס הנתונים Northwind זמין עם שחרור SQL Server 2000. זה פותח מקורית על ידי צוות הגישה, ומבוסס על חברת היבוא והיצוא שמכונה Northwind Traders.

החברה מיקרוסופט הסירה את מסד הנתונים Northwind בהוצאת SQL Server 2005. עם זאת, משתמשי SQL Server עדיין יכולים להוריד אותם מ- מסדי הנתונים לדוגמא של Northwind ו-pubs עבור SQL Server 2000.

ההורדה היא קובץ התקנה .msi בשם SQL2000SampleDb.msi. בעת הרצת קובץ ההתקנה, יש לחלץ סקריפטי מסד נתונים T-SQL לתיקיית ברירת המחדל (C:\SQL Server 2000 Sample Databases), כפי שניתן לראות למטה.

פרסומת

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

ניתן להתקין את שני הדוגמאות על ידי הרצת סקריפט instpubs.sql כדי להתקין את הדוגמה של Pubs, וכן גם סקריפט instnwnd.sql כדי להתקין את הדוגמה של Northwind. הסקריפטים מכילים את כל הקוד הנדרש ליצירה ולמילוי הטבלאות עבור כל מסד נתונים.

Opening the .sql files for the two sample databases with SSMS’ Query Editor (Image credit: Petri/Michael Otey)
  • יש ללחוץ על כפתור ה- הרץ הירוק כדי להריץ את הסקריפטים.

כאשר הרצתי את סקריפט ה־instpubs.sql להתקנת הדוגמה Pubs, קיבלתי את השגיאה "לא ניתן למצוא את הפרוצדורה המאוחסנת 'sp_dboption'." פרוצדורה זו הוסרה מ־SQL Server לאחר השחרור של SQL Server 2008. עם זאת, מחיקת השורות הבאות אפשרה לסקריפט לרוץ ללא שגיאות.

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

הרצת סקריפט ה־instnwd.sql להתקנת הדוגמה Northwinds יצרה את אותה שגיאת "לא ניתן למצוא את הפרוצדורה המאוחסנת 'sp_dboption'." במקרה זה, מחיקת השורות הבאות אפשרה לסקריפט להריץ עד סיומו.

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

הרצת סקריפטים אלו ב־T-SQL תיצור ותמלא את מסדי הנתונים הדוגמתיים Pubs ו־Northwind. לאחר מכן, תוכל להשתמש בהם כמו בכל מסד נתונים אחר של SQL Server.

מסדי הנתונים הדוגמתיים AdventureWorks ו־AdventureWorksLT

מתחילת SQL Server 2005, מיקרוסופט הוציאה את מסד הנתונים לדוגמה AdventureWorks, שנועד להחליף את Pubs ו-Northwind. AdventureWorks הוא מסד נתונים לדוגמה עבור חברת ייצור ומכירת אופניים בינלאומית בשם Adventure Works Cycles, והוא משתמש במערכת שמות user-schema שמיקרוסופט הציעה עם SQL Server 2005.

הגרסאות הרצות הראשיות של מסדי הנתונים AdventureWorks הן AdventureWorks ו-AdventureWorksLT. האחרון הוא גרסה קטנה ופשוטה יותר של מסד הנתונים המלא של AdventureWorks. קיימות מספר גרסאות של מסדי הנתונים הללו עבור כל גרסה של SQL Server החל מ-2008 R2. אך עד כה, לא הופקה גרסה חדשה עבור SQL Server 2022.

הדוגמאות של AdventureWorks לגרסאות שונות של SQL Server נמצאו מקורית ב־CodePlex, אך האתר של CodePlex נסגר ב־2017. הן הועברו לGitHub מאז. הטבלה למטה כוללת קישורי הורדה עבור כל הגירסאות של מסד הנתונים לדוגמה של 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

ההורדות אלו הם קבצי גיבוי מסד נתונים מלאים (.bak) שניתן להשתמש בהם כדי להתקין את דוגמאות ה־AdventureWorks. ניתן פשוט להוריד את קובץ .bak ולאחר מכן להשתמש ב־SSMS או בהצהרת ה־T-SQL RESTORE כדי לשחזר את קובץ הגיבוי כמסד נתונים של SQL Server.

בתמונה למטה, ניתן לראות שדיאלוג השחזור של SSMS עבור ה־AdventureWorks2019 מבקש ממך את קובץ ה־.bak לשחזור וגם מבקש שם מסד נתונים.

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

בנוסף לדוגמאות מסד הנתונים היחסיות, Microsoft הביאה גם דוגמאות למערכות מידע/אחסון נתונים עסקיות עבור מסד הנתונים של AdventureWorks בשם AdventureWorksDW ו־AdventureWorksAS. ניתן להשתמש בדוגמאות אלו עם שירותי הניתוח של SQL Server. הן מותקנות בדיוק כמו הדוגמאות היחסיות על ידי הורדה ושחזור של קובץ .bak. דוגמאות המערכת המידע/אחסון הנתונים נמצאות במיקומים הבאים ב־GitHub:

מסד נתונים לדוגמא של WideWorldImporters

עם השקת SQL Server 2016, Microsoft הציעה את WideWorldImporters, בסיס נתונים חדש לדוגמה. הוא מיועד ליבואן

ישנן גרסאות שונות של מסד הנתונים היחסי WideWorldImporters עבור גרסת ה-On-Premises של SQL Server 2016 ומעלה כמו גם עבור מסד הנתונים של Azure SQL:

  • WideWorldImporters-Full.bak: עבור גרסת ה-Enterprise של SQL Server 2016 ומעלה. זה בפורמט קובץ גיבוי.
  • WideWorldImporters-Standard.bak: עבור גרסת ה-Standard של SQL Server 2016 ומעלה. גם זה בפורמט קובץ גיבוי.
  • WideWorldImporters-Full.bacpac: זה עבור טייר ה-Premium של מסד הנתונים של Azure SQL. זה מספק בסיס נתונים לדוגמה מלא בפורמט BACPAC.
  • WideWorldImporters-Standard.bacpac – זה גם עבור טייר הסטנדרטי של מסד הנתונים של Azure SQL וזה מספק בסיס נתונים לדוגמה בפורמט BACPAC.

כדי להתקין את בסיס הנתונים לדוגמה של WideWorldImporters במערכת שרת SQL מקומית, ניתן להוריד את קובץ ה-.bak ולאחר מכן להשתמש ב-SSMS או ב-T-SQL RESTORE כדי לשחזר את קובץ הגיבוי כבסיס נתונים של שרת SQL. ניתן לראות את תיבת הדווח של SSMS לשחזור בסיס הנתונים של WideWorldImporter באיור הבא.

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

קבצי ה-BACPAC השונים ניתן להשתמש בהם עם שרת SQL במקום או בשרת SQL של Azure. כדי לייבא קובץ .bacpac כבסיס נתונים חדש של שרת SQL, ניתן להשתמש ב-סטודיו לניהול שרת SQL.

  • לחץ על צומת המסד נתונים ובחר באפשרות ייבוא אפליקציית טייר נתונים מתוך תפריט ההקשר.
  • עקוב אחר ההוראות באשף הייבוא שניתן לראות למטה כדי לייבא את בסיס הנתונים לדוגמה מקובץ ה-.bacpac.
Importing a .bacpac file as a new SQL Server database in SSMS (Image credit: Petri/Michael Otey)

כמו שתיכול לצפות, בנוסף לדוגמאות היחסיות ישנם גם דוגמאות למערכות אחסון נתונים.

  • WideWorldImportersDW-Full.bak – עבור גרסת Enterprise של SQL Server 2016 ומעלה. זה בפורמט קובץ גיבוי.
  • WideWorldImportersDW-Standard.bak – עבור גרסת Standard של SQL Server 2016 ומעלה. זה בפורמט קובץ גיבוי.
  • WideWorldImportersDW-Fullbacpac – עבור Premium tier של מסד הנתונים של Azure SQL. זה מספק בפורמט BACPAC מסד נתונים לדוגמה מלא של OLTP.
  • WideWorldImportersDW-Standard.bacpac – עבור Standard tier של מסד הנתונים של Azure SQL. זה מספק בפורמט BACPAC מסד נתונים לדוגמה של OLTP בגרסת Standard.

לקבלת פרטים נוספים על יצירת נתונים עבור בסיס הנתונים לדוגמה, ניתן לבדוק את המאמר על יצירת נתונים למסד הנתונים WideWorldImporters ב-Microsoft Learn. יש דוגמאות קוד בקובץ samplescripts.zip שמכילים סקריפטים T-SQL המראים כיצד להשתמש בתכונות שונות במסד הנתונים הזה. בנוסף, יש קובץ עומס עבודהנהגים.zip שמכיל שני תוכניות שיכולות לדמות עומס עבודה הרץ נגד מסד הנתונים WideWorldImporters.

סיכום

במדריך זה, למדת על בסיסי נתונים לדוגמה של Microsoft SQL Server כולל Northwind, AdventureWorks, ו-WideWorldImporters. מדריך זה יכול לעזור לך להחליט אילו דוגמאות תרצה להשתמש בהן לצורך בדיקה ופיתוח, וניתן למצוא מידע נוסף ב-תיעוד של Microsoft SQL Server.

מאמר קשור:

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