ההבדל בין סמן מפורש לסמן משתמע

Anonim

סמן מפורש לעומת סמן גלוי

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

-> ->

מהו סמן משתמע?

סמנים משתמעים נוצרים באופן אוטומטי ומשמשים את Oracle בכל פעם שמתפרסמת הודעה נבחרת. אם נעשה שימוש בסמן משתמע, מערכת ניהול מסדי הנתונים (DBMS) תבצע את הפעולות הפתוחות, אחזור ונסגר באופן אוטומטי. יש להשתמש בסמנים משתמעים רק עם משפטי SQL המחזירים שורה אחת. אם משפט SQL מחזיר יותר משורה אחת, שימוש בסמן משתמע יציג שגיאה. סמן משתמע מקושר אוטומטית עם כל הצהרת מניפולציה של נתונים (DML), כלומר, INSERT, UPDATE ו- DELETE. כמו כן, סמן משתמע משמש לעיבוד הצהרות SELECT INTO. כאשר מביאים נתונים באמצעות סמנים משתמעים חריג NO_DATA_FOUND ניתן להעלות כאשר משפט SQL מחזירה נתונים. יתר על כן, סמנים משתמעים יכולים להעלות חריגות מסוג TOO_MANY_ROWS כאשר הצהרת SQL מחזירה יותר משורה אחת.

-> ->

מהו סמן מפורש?

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

-> 3 ->

ההבדל בין הסמן המפורש לסמן המובהק

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