מחשבים, תכנות
פקודת SQL-השאילתות
SQL - אחת השפות התכנות הנפוצות ביותר כדי ליצור ולנהל את מסד הנתונים, כמו גם עבור מגוון רחב של פעולות עם המידע עצמו.
כפי שמראה בפועל, זה די קל לשימוש ועושה את המירב אוצר המילים תקן של השפה האנגלית. כמו בכל שפת תכנות אחרת, SQL יש היגיון ותחביר משלה, אוסף של פקודות בסיסיות וכללי לשימוש שלהם.
סיווג של פקודות SQL
כל פקודות SQL סטנדרטי יכול להיחשב מבוסס על ליעדם. כבסיס vneglasnoy הסיווג יכול לקחת סטים כגון:
לשאילתא פקודה.
צוותי מובנית נהלים ופונקציות.
טריגרים ושולחנות מערכת הפיקוד.
סטים של שילובים לעבוד עם משתנים התאריך מחרוזת.
פקודות לעבודה עם נתונים וטבלאות.
סיווג זה הוא אינסופי, אבל הסטים פקודים בשפת SQL הבסיסיים בנויים בדיוק בגלל סוגים אלה.
בהתחשב בסיווג של השפה, שלא לדבר שזה אוניברסלי, כפי שמעידים היקף השימוש בו. שפת תכנות זו גרסותיה מנוצלות לא רק בסביבה רגילה, אלא גם בתוכניות אחרות, אשר, בדרך כזו או אחרת, השתמשת.
היקף השימוש SQL ניתן לראות מנקודת המבט של תוכנות אופיס, כלומר MicrosoftAccess. שפה זו, או ליתר דיוק, מינים שלה - MySQL, אתה יכול לנהל את מסד הנתונים באינטרנט. גם סביבת פיתוח אורקל מבוסס על השימוש שלהם פקודות SQL שאילתות.
באמצעות SQL ב MicrosoftAccess
אחד השימושים הנפוצים ביותר בשפה עבור חבילת תוכנה תכנות מסד נחשב MicrosoftOffice. המחקר של תוכנה זו מספקת קורס הספר למדעי המחשב, וכן בכיתה י"א נחשבת מערכת ניהול מסדי נתונים MicrosoftAccess.
זהו המחקר של יישום התלמידים להכיר את התפתחות השפה של מסדי נתונים ולקבל הבנה בסיסית של כל זה כלול. צוות SQL גישה די פרימיטיבית, כמובן, אם אנו רואים אותם בצורה מקצועית. הרצת פקודות כאלה היא מאוד פשוטה, והם מותאמים בעורך קוד.
קח דוגמא ספציפית:
Pe_SurName SELECT
מ Pherson
איפה Pe_Name = 'מרי';
בהתבסס על התחביר הפקוד, אתה יכול להבין כי היא מחזירה את שם המשתמש של האדם, במקרה הזה, אישה בשם מרי, אשר מאוחסנת בטבלת מסד נתוני מגעים.
למרות שימוש SQL ב- Access מוגבל, לפעמים שאילתות פשוטות כאלה יכולים לפשט את היישום מאוד של המשימות שהוקצו.
שימוש במשפטי SQL ב- Oracle
אורקל - זה כנראה SQL Server של מיקרוסופט רק מתחרה רציני. זוהי סביבת פיתוח זו וניהול של מסד הנתונים הוא מוביל באופן מתמיד לשיפור תכונות מוצר תוכנה חברת מיקרוסופט כמו בתחרות - הוא המנוע של ההתקדמות. למרות היריבות מתמיד, צוות SQL Oracle חזר SQL. יצוין כי למרות אורקל ונחשב כמעט העתק מלא של SQL, ההיגיון של המערכת הזאת, ואת השפה נחשבת בדרך כלל קלה יותר.
מערכת Oracle באמצעות קבוצה מסוימת של פקודות הוא לא מבנה מסובך כזה. אם ניקח בחשבון את יכולות נתונים של סביבות פיתוח מסד נתונים, אורקל אין את המבנה המורכב של שאילתות מקוננות.
הבדל זה מאפשר פעמים רבות כדי לזרז את העבודה עם הנתונים, אך, לעומת זאת, מוביל לשימוש יעיל של זיכרון, במקרים מסוימים יכול. מבנה אורקל בנוי ברובו על שולחנות זמני והשימוש בהם. כדוגמא: פקודות SQL במערכת מבוססות על האנלוגיה עם שפת SQL עצם סטנדרטים, אם כי לא שונה באופן משמעותי מזה.
SELECTCONCAT (CONCAT (CONCAT ( 'עובד', sname), CONCAT (substr (fname, 0, 1), substr (otch, 0, 1))), CONCAT ( 'prinyatnarabotu', acceptdate)) מהעובדים איפה acceptdate> TO_DATE ('01 .01.80 '' dd.mm.yyyy ");
שאילתא זו תחזיר נתונים על עובדים, המועסקים במשך תקופה מסוימת של זמן. למרות שמבנה השאילתה שונה שרת SQL של מיקרוסופט, ביצוע פקודות SQL במערכות אלה דומות, למעט פרטים קטנים.
באמצעות SQL באינטרנט
עם כניסתו של ה- World Wide Web, כלומר באינטרנט, בשפת SQL מרחיבה את היקף השימוש. כידוע, הרשת מאוחסן הרבה מידע, אבל זה לא כאוטית, ויפורסם על האתרים ושרתים פי קריטריונים מסוימים.
לאחסון מידע באינטרנט, כמו גם במקומות אחרים, אחראים ישירות למסד הנתונים, ואת האתרים מערכות בקרה. בדרך כלל, אתרים בקוד מאורגנים בשפות תכנות שונות, אבל בבסיס הנתונים מבוסס על סוג של SQL, וזה בלשון יצירת מסד נתונים, מכוונת לעבר ממשקי אינטרנט MySQL.
התחביר ואת הערכה הבסיסית של פקודות בשפה לחלוטין להעתיק את כל SQL המוכר, עם כמה תוספות שלו, אשר נותנות לו בניגוד מיקרוסופט TSQL השרת.
פקודות SQL לגמרי דומה לא רק תחביר, אלא גם קבוצה סטנדרטית של מילות פונקציה. ההבדל היחיד הוא בקשת השיחה ובנייה. לדוגמה, תדון בבקשה ליצור טבלה חדשה, היא מתחילה מה שהם מלמדים ילדים בבתי ספר על המחשב:
Link $ = mysqli_connect ( 'localhost', "שורש", '', 'בודק');
אם (! בקישור $) למות ( "שגיאה");
$ Query = "ליצור משתמשים בטבלה (
התחבר varchar (20)
Varchar סיסמא (20)
");
אם (mysqli_query (קישור $, $ שאילתה)) echo "טבלה שנוצרה.";
elseecho "הטבלה לא נוצר:" .mysqli_error ();
mysqli_close (קישור $);
כתוצאת בקשה כזו, אתה יכול לקבל "משתמשים" שולחן חדש, שבו יהיו שני שדות: שם משתמש וסיסמא.
תחביר שונה תחת האינטרנט, אבל מבוסס על צוות MicrosoftSQLServer.
בניין שאילתות MicrosoftSQLServer
המדגם של קבוצה מסוימת של טבלאות נתונים הוא אחת המשימות העיקריות של SQL. לפעולות כאלה, ובלבד הפקודה בחר ב SQL. זה בערך אותו בהמשך.
במונחים של בניית צוות הם פשוטים מאוד, ואת הפקודה בחר מאוד SQL בנוי כדלקמן. לדוגמא, יש טבלה שבה הנתונים זמינים עבור עובדים אשר, למשל, שם אדם. אנו מציגים את הבעיה שהשולחן עליך לבחור נתונים על עובדים, אשר מועד הלידה - בקטע מן הראשונים של ינואר עד הראשון של מרץ של השנה הנוכחית, ועד בכלל. עבור מדגם כזה יש צורך לבצע פקודת SQL, אשר היא לא רק עיצוב סטנדרטי, אלא גם את מצב הבחירה:
בחר * מאדם
איפה P_BerthDay> = '01 / 01/2016 'ו P_BerthDay <= '03 / 01/2016'
ביצוע פקודה זו תחזיר את כל הנתונים על עובדים, למי יש יום הולדת הוא בתקופה, אשר הוגדר על ידך. לפעמים אתה יכול להעמיד למבחן כדי להציג את שם המשפחה בלבד, שם פרטי ושם של העובד. לשם כך, בקשה לבנות בצורה קצת שונה, למשל, כדלקמן:
SelectP_Name - שם
P_SurName - שם המשפחה
P_Patronimic - ושם
מאדם
איפה P_BerthDay> = '01 / 01/2016 'ו P_BerthDay <= '03 / 01/2016'
עם זאת, זהו רק מבחר של דבר. הוא, במהותו, אינו משפיע כלום, אלא רק מספק מידע. אבל אם אתה מחליט לקחת ברצינות את שפת SQL, תצטרך ללמוד כיצד לבצע שינויים בבסיס הנתונים, מאז הקמה ללא זה פשוט בלתי אפשרי. איך זה נעשה זה יידון בהמשך.
בסיסי פקודות SQL לשנות נתונים
התחביר בנוי לא רק עבור שאילתות, אלא גם עבור מניפולציה בנתונים. בעיקרון, את המשימה מתכנת מסד עוסק בכתיבת התסריט עבור הדגימות ודיווחים, אבל לפעמים אתה צריך לעשות שינויים לשולחן. פקודות SQL רשימה עבור פעולות כאלה הוא קטן והוא מורכב משלושה צוותים עיקריים:
כנס (טרנס. כנס).
עדכון (טרנס. עדכון).
מחק (טרנס. הסר).
מטרת הצוותים הללו הוא קל לקבוע, זה מספיק רק לתרגם את שמם. פקודות אלו הם קלים לשימוש אין בנייה מסובך של התוכנית, אך ראוי להזכיר כי חלק מהם, אם משתמשים בו בצורה לא נכונה, יכול לגרום נזק בלתי הפיך למאגר.
ככלל, לפני השימוש בפקודות אלה MSSQL שעליך לשקול ולקחת בחשבון את כל ההשלכות האפשריות של יישומם.
לאחר לימוד הפקודות הללו, תוכל להתחיל באופן מלא בעבודה עם טבלאות נתונים, ובכך לשנות את זה ולעשות כמה משתנה מסביר חדש או להסיר ישן.
צוות הכנס
כדי להכניס נתונים לטבלה באמצעות צוות הבטוח - כנס. נתונים הוכנס בצורה לא נכונה היא תמיד ניתן להסיר ולהוסיף למאגר הנתונים שוב.
הכנס הפקודה להכניס נתונים חדשים לתוך השולחן מאפשר לך להוסיף כמערכת שלמה, ובאופן סלקטיבי.
לדוגמא, לשקול הוספת פקודה בדמותו השולחן שתוארה לעיל. על מנת להפוך את פקודת SQL חייב להתנהל בטבלת הנתונים, אשר מאפשרת להכניס את כל הנתונים בטבלה או למלא אותו באופן סלקטיבי.
הכנס לתוך אדם
בחר "ויטלי "גרגורייב"", "פטרוביץ", "1988/01/01"
MS SQL SERVER פקודת תכנית כזו מוזן אוטומטית כל התאים של הטבלה עם הנתונים שצוינו. ישנם מצבים שבהם העובד אין האות האמצעית, למשל, הוא בא לעבוד בבורסה מגרמניה. במקרה זה, להפעיל את נתוני הכנסות הפקודה הבאים, אשר יביאו לשולחן רק מה שהכרחי. התחביר של הפקודה הזו הוא כדלקמן:
Insertintoperson (P_Name, P_SurName, P_BerthDay)
ערכים ( "דוד", "הוק", "1986/02/11")
צוות זה ממלא רק את התא שצוין, וכל השאר יהיה בטל.
פיקוד לשנות את הנתונים
כדי לשנות את הנתונים כקו כולו, ותאים כמה להשתמש בפקודת העדכון SQL. בצע פקודה זו צריכה רק בתנאים מסוימים, כלומר, מצביע דווקא בה קו של המספר הדרוש כדי לבצע שינויים.
יש עדכון SQL הפקודה בתחביר פשוט. כדי להבטיח שימוש נכון, אתה מציין באילו נתונים בטור ואת שיא צריכים להיות שונים. הבא, ליצור תסריט ולבצע אותה. קח דוגמא. אנחנו צריכים לשנות את תאריך הלידה של הוק דוד, אשר נכללת בטבלה העובד בבית מספר 5.
אדם עדכן
הגדר P_BerthDay = '02 / 10/1986 "איפה P_ID = 5
מצב (בתסריט) לא ישנה את תאריך לידה של כל הרשומות בטבלה, ולעדכן רק את הנחוץ.
זהו זה צוות של מתכנתים משתמש בתדירות הגבוהה ביותר, כי זה מאפשר לך לשנות את הנתונים בטבלה מבלי לגרום נזק משמעותי את המידע כולו.
פקוד להשתמש נהלים מובנית ופונקציות
בעזרתו של SQL השפה, אתה לא יכול לבנות רק שאילתות, אלא גם כדי ליצור מנגנונים מובנים לעבודה עם נתונים. ככלל, ישנם מקרים שבהם תרצה להשתמש בגוף של המדגם שאילתה בכתב קודם לכן.
אם לשפוט באופן הגיוני, אז אתה צריך להעתיק ולהדביק את הטקסט המדגם במקום הנכון, אבל אתה יכול לעשות פתרון פשוט. קח דוגמה שבה הכפתור מוצג ממשק העבודה כדי להדפיס את הדוח, למשל ב- Excel. פעולה זו תבוצע לפי הצורך. למטרות אלה, הם מובנים פרוצדורות מאוחסנות. פקודות SQL שאילתות, במקרה זה, נמצאים בתהליך ונגרמים על ידי צוות SQLExec.
הבה נניח כי הליך במועדי המשיכה הלידה של עובדים עם השולחן אדם שתואר לעיל נוצר. במקרה זה, אין צורך לכתוב את כל השאילתה. כדי להשיג את המידע הדרוש מספיק כדי לבצע את הפקודה Exec [שם הליך] ולהעביר את הפרמטרים הדרושים עבור דגימה. כדוגמא נוכל לשקול את המנגנון ליצירת אופי כזה של ההליך:
CREATEPROCEDUREPrintPerson
@DB smalldatetime
@DE smalldatetime
AS
SET NOCOUNT ON;
* SELECT מאדם
מ HumanResources.vEmployeeDepartmentHistory
איפה P_BerthDay> = @DB ו P_BerthDay <= @DE
ANDEndDateISNULL;
GO
הליך זה מחזיר את כל המידע על שעובדיה ההולדת יהיה בתוך פרק זמן נתון.
שלמות הנתונים בארגון. טריגרים
כמה MS SQL-הפקודה, ויש שיאמרו אף, עיצוב לא יכול לארגן מניפולציה נתונים בלבד, אלא גם כדי להבטיח שלמות שלהם. למטרות אלה בתכנון המערכת תוכננה השפה, יוצרת מתכנת עצמו. אלו הם גורמים שנקראים, אשר יכול לספק שליטת נתונים.
במקרה זה, עבור ארגון תנאי בדיקה באמצעות פקודת שאילתות SQL סטנדרטית. בשנת טריגרים, אתה יכול ליצור הרבה תנאים ומגבלות על נתונים ישלטו לא רק את הגישה למידע, אלא גם לאסור על ההסרה, השינוי, או להכניס נתונים.
סוגי פקודות SQL שיכול לשמש טריגר, לא מוגבלים. קח למשל את הדוגמא הבאה.
אם אנו מתארים את המנגנון ליצירת ההדק, ואז סוגי פקודות SQL זהים בעת יצירת הליך. האלגוריתם עצמו שיפורט להלן.
הצעד הראשון הוא לתאר את פקודת השירות כדי ליצור טריגרים:
CREATE ההדק Person_Insert
נקודה ליד שולחן:
ONPerson
מציין עבורו פעולות נתונים (במקרה זה, הנתונים לשנות מבצע).
הצעד הבא הוא לציין את טבלאות משתנים:
להכריז int @ID. @ Date smalldatetime @nID int. @nDatesmalldatetime
בהמשך להכריז סמנים כדי לבחור טבלאות נתוני הסרת הכנסת נתונים:
להכריז הסמן C1 עבור P_ID בחר, P_BerthDay מן שהוכנס
להכריז C2 הסמן עבור בחר P_ID, P_BerthDay שנמחקו
הגדרת צעדי מבחר נתונים. ברגע בגוף סמנים לקבוע תנאים ותגובה אליו:
אם @ID = @nID ו @nDate = '01 / 01/2016 '
מתחיל
מבצע ההפעלה sMasseges בלתי אפשרי. התאריך אינו מתאים "
סוף
ראוי לציין כי על ההדק לא יכול ליצור רק, אלא גם לכבות לזמן. מניפולציה כזו יכולה להחזיק רק פקודה שרת SQL ביצוע מתכנת:
altertablePERSONdisabletriggerall - להשבית את כל טריגרים נוצר על השולחן, ובהתאם לכך, altertablePERSONenabletriggerall - להכללה.
SQL הבסיסית אלה פקודות הנפוצה ביותר, אבל השילוב שלהם יכול להיות מאוד מגוון. SQL - שפת תכנות גמישה מאוד והוא נותן ליזם מקסימום האפשרויות.
מסקנה
מן האמור לעיל אנו יכולים רק להסיק: כישורי שפה SQL חובה לכל מי שרוצה לעסוק ברצינות בתכנות. היא שוכנת בליבה של כל הפעולות שבוצעו באינטרנט באתר הבית. זו הסיבה מתכנת העתיד חייב לדעת את מספר הפקודות של השפה, כי רק הם יכולים להיות, אם אפשר לומר כך, כדי לתקשר עם המחשב.
כמובן, ישנם חסרונות, כמו כל דבר בעולם הזה, אבל הם כל כך קטנים כי פשוט חיוור לפני לגופו. בין כל שפת תכנות SQL הוא כמעט היחיד מסוגו, משום שהוא אוניברסלי, וידע בכתיבת סקריפטים וקודים הם הבסיס של כל האתרים כמעט.
היתרון העיקרי של bezogovorchno SQL יכול להיחשב הפשטות שלו, כי אחרי הכל, הוא היה זה הציג לתוך תוכנית הלימודים. מאז הוא יכול לטפל גם מתכנת מתחיל, לא בקיא באמת בשפות.
Similar articles
Trending Now