
Create Table בונה טבלה בסקריפט, כולל עמודות, טיפוסי נתונים ואילוצים. ההרצאה בונה קודם טבלת חתולים פשוטה ואחר כך טבלת טלפונים עם אילוצים וקשר לטבלת Employees.Create Table Kittens ואחריו סוגריים עגולים (לא מסולסלים) ובתוכם העמודות, מופרדות בפסיקים. לכל עמודה: שם, טיפוס, ואילוצים.KittenID int Primary Key Identity(1,1). ב-Identity קובעים ערך התחלה וגודל קפיצה. ברירת המחדל היא התחלה ב-1 וקפיצה ב-1.KittenName כ-nvarchar(20) ו-KittenAge כ-int.Create Database כותבים Use cute kittens ו-go, ואז הטבלה נוצרת במסד החדש. את המסד המקורי מחקו עם Close Existing Connection.Insert Into Kittens עם שלוש רשומות (מיצי בן 3, קיצי בן 4, סייבר בן 5). חשוב לשים go כדי שכל פעולה תסתיים בנפרד. אחרי Execute ו-Refresh הטבלה והנתונים קיימים.PhoneID: int, Primary Key, Identity.PhoneNumber: nvarchar(20), Not Null ו-Unique.PhoneType: nvarchar(10) עם אילוץ Check שמגביל לערכים מוגדרים: home, mobile, office, other (ואפשר גם fax). אפשר לציין במפורש Null כדי להתיר ערך ריק.IsActive: bit עם Default של 1 (true), כדי לסמן טלפון כלא פעיל במקום למחוק אותו.EmployeeID: int, Not Null, עם References לעמודת EmployeeID בטבלת Employees. לא הגיוני טלפון בלי עובד שהוא שייך אליו.Default Value של 1 ב-IsActive. ב-Database Diagram חדש רואים את הקשר בין Phones ל-Employees.הטקסט המלא של הדקות הראשונות בהרצאה «יצירת טבלאות ב-SQL» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אחרי שבנינו את הדאטאבייס בעזרת פקודת סקריפ, בואו נבנה טבלה פשוטה, טבלה של חתולים. אז יש לנו create table, זאת הפקודה שיוצרת לנו טבלה חדשה, בואו נקרא לטבלה kittens, ואנחנו יורדים שורה, פותחים סוגריים עגולים, לא מסולסלים, וסוגרים סוגריים עגולים, זה התחביר, וביניהם אנחנו כותבים אילו עמודות אנחנו רוצים עבור הטבלה.
אנחנו רוצים את kittenid, שזה בעצם יהיה המפתח הראשי, אז בואו נגדיר שהסוג שלו זה int, מיד אחר כך אנחנו נותנים כל מיני אילוצים, זאת אומרת כל פעם שאנחנו בונים עמודה יש פה את השם שלה, יש פה את הטיפוס נתונים ואז כל אילוץ שהוא שקיים עבור אותה עמודה.
לדוגמה, מפתח ראשי יהיה פריימרי key ואם אני רוצה גם שהוא יהיה מספור אוטומטי רץ זה יהיה identity ואני קובע באיזה מספר אני רוצה שהוא יתחיל כאן וכמה קפיצות יהיה כל מספר נוסף.
אם אני לא מגדיר את זה, ה-Default כמובן הוא מתחיל מ-1 וקופץ ב-1. אם נניח אני קובע, אתה מתחיל ב-10 ואתה קופץ ב-10, אז הוא יתחיל ב-10 ויקפוץ ב-10 או תתחיל ב-10 ויקפוץ ב-5 או וואטאבר.
אפשר גם להגיד 1, 1 ואז יודעים בוודאות שהוא מתחיל מ-1 וקופץ ב-1. פסיק. אנחנו עוברים לעמודה הבאה, בואו נניח שזה KittenName.
נגדיר אותו כ-nvarchar בגודל 20. בואו נניח שאנחנו רוצים גם קיתן אג' ונגדיר שזה אינטג'ר ואפשר מיד להגדיר כאן הכנסה של מידע לעמודות האלה.
לפני זה אולי נריץ ונבנה את זה. אם אנחנו עכשיו ניקח את הדבר הזה ונריץ אותו אקסקיוט אנחנו בעצם מייצרים את הדאטאבייס הזה לא בתוך קיוט קיתן אז בואו נראה אני מבצע אקסקיוט אני רואה שהוא כותב לי תשמע הצלחתי אני הולך לאקיוט קיטנס טייבלס בואו נרפרש ואין פה שום טבלה שנקראת קיטנס אם
אנחנו נסתכל אנחנו נראה שהדאטאבייס מוגדר כנורת'ווינד ואם אני הולך לנורת'ווינד ופותח את הטבלאות הנה טבלת קיטנס זה לא מה שרצינו בואו ניפטר ממנה דיליט מה שאנחנו רוצים לעשות אנחנו רוצים ברגע שאנחנו מייצרים דאטאבייס מיד לשנות את הגדרה הזאת לדאטאבייס שיצרנו בכדי ששאר הטבלאות
שאנחנו בונים יוגדרו בדאטאבייס הזה. לצורך כך בואו רגע ניפטר לגמרי מהדאטאבייס, אין בו שום דבר, delete. כדאי לבצע Close Existing Connection, אולי מישהו משתמש בו כרגע איזושהי תוכנה שמקודם פתחתי אולי, זה בעצם מקל על הסגירה שלו, ומיד אחרי שיצרתי דאטאבייס use, cute kittens, בואו נעשה go,
ועכשיו אנחנו יכולים לייצר טבלאות, והנה ה-go. זאת אומרת שאם אנחנו מריצים עכשיו את כל זה בבת אחת הוא גם ייצר דאטאבייס גם מעביר את השליטה לדאטאבייס במקום Northwind וגם מיד יוצר טבלה.
אתם יודעים מה? אולי מיד נלך ונייצר לעצמנו כמה רשומות insert into kittens זה בסדר כי אנחנו כבר נמצאים בדאטאבייס בשלב הזה של cute kittens כי העברנו את זה כאן ובואו נגדיר שאנחנו רוצים values ולכל רשומה יש שם בוא נניח מיצי ויש איזשהו אייג' בוא נניח שמיצי הוא בן שלוש אפשר נקודה פסיק לא חייבים ובואו נכניס
גם את קיצי והוא בן ארבע ובוא נניח גם את סייבר שזה החתול שלי והוא בן חמש למרות שהוא יותר קטן מזה אם אנחנו שומרים ומריצים הכל מה שיקרה