יצירת בסיס נתונים היא משימה פשוטה אך מאתגרת.ישנם גורמים רבים שיש לקחת בחשבון. ההתקדמות הניכרת בחומרה ותוכנה של טכנולוגיות מידע אינה נותנת עילה להזניח את ההסתברות לתקלה טכנית, גישה לא מורשית, שיבוש במבנה הטבלאות והוספת נתונים שגויים.
המחשב הוא לא גבר, ואף אחד, אפילו לא הכי"חכם", האלגוריתם עדיין רחוק מרעיונות הבינה הטבעית: ללא עזרה של מתכנת, אין לו הרבה מה לעשות. עם זאת, בניגוד לאדם, תוכנית יכולה לבצע באופן עקבי ונכון את המשימה שלה, העיקר לכתוב אותה נכון.
מושג MySQL: להכניס
צורות מסורבלות חיצוניות של תחביר SQL הן מאודקל לשימוש. הנוהג של כתיבת שאילתות באותיות גדולות נשמר עדיין, אך מוחלף בהדרגה על ידי שימוש תמציתי יותר בשני המרשמים. בהקשר זה, חשוב לא לשכוח: ברגע ששם השדה המוזכר ברשום אחד באותה שאילתה, אם ישמש שוב, חייב להיות באותו גרסת איות.
Характерная черта операции MySQL insert into, как והרבה שקשור לתכנות באינטרנט: "מה שלא מובן לא יבוצע". פשוט תתעלם מבקשת חידוש מסד הנתונים שנוצרה באופן שגוי, וזה רחוק מלהיות תמיד אפשרי לשים לב לכך מייד.
יש לשלוט בעובדה של הוספת רשומה,כמו גם גישה למאגר באופן כללי. יש למלא כל שדה בערך מהסוג המתאים. במקרה זה, לא תמיד יש צורך לציין את השדות בטבלת התוצאות. לא תמיד אתה צריך להעביר ערכים ספציפיים: הכנסת MySQL לבניין בחר מאפשרת לך להוסיף קבוצה של רשומות מטבלה או שאילתה אחרת.
על הבקשה להיות תחבירית והגיוניתנכון. השימוש בכל גרסה של שאילתת MySQL להכניס לבניית ערכים צריך לקחת בחשבון את קידוד הסקריפט בו הוא נמצא, את קידוד טבלת מסד הנתונים ולמעשה את המידע שמתווסף.
הוספת ערך קלאסי
כל טבלת MySQL היא רצף של רשומות,לכל אחד מהם מספר שדות. אתה יכול להוסיף רשומות מטבלה אחרת. זה מספיק כדי לציין בשאילתה לבחור מה ומאיפה, פנימה לאן. משמעות התו "*" היא שהשאילתה תיכנס לכל השדות של כל רשומה.
כתוצאה מקריאה לפונקציה זו, תוכן הטבלה $ cSrcTable ייכתב לחלוטין לטבלה $ cDstTable, ממנה כל הרשומות יימחקו בעבר.
הוספת ערך אחד
בניית MySQL הכנס לערכים מאפשר לך להוסיף רשומות אחת בכל פעם, תוך ציון שדות ספציפיים והערכים הספציפיים המתאימים להם.
הוספת רשומות דרך הממשק שלך
עקרון העבודה עם MySQL מיושם באמצעות הטופסבקשות. זה נוח במצב שורת הפקודה ומיושם באותה צורה בשפות תכנות שונות. בפרט ב- PHP משתמשים במחרוזת שאילתה - רצף תווים רגיל שתוכנו מתמלא במהלך פעולת האלגוריתם. ואז הטקסט של השאילתה שנוצרה עובר לפונקציה mysqli_query () ומבוצע.
איזו צורת עבודה לבחור עם בסיס הנתונים -לפתור במקרה ספציפי עבור היזם, אך בכל המקרים הכי נוח להציג את המשימה מבחינת פעולות הקריאה / כתיבה של מידע מ / אל בסיס הנתונים בצורת ממשק משלו. ניתן ליישם רעיון זה כמערכת פונקציות או כאובייקט נפרד.
בגרסה זו, פעולות ישירותהוספת רשומות תוסתר, והתהליך יורכב משיחות רציפות של הפונקציות שלהם. לדוגמה, scfAddUser ("איבנוב", "איוואן") יביא לשאילתת MySQL להכניס לערכי 'all_users' ("last_name", "first_name", "status") ("Ivanov", "Ivan", " חדש "). אפשרות זו שומרת באופן משמעותי את הקוד והופכת אותו לקריא ומשמעותי הרבה יותר.
ההבדל המהותי בין הממשק שלה לביןשימוש ישיר בפעולות עם בסיס הנתונים בצורתם המקורית הוא כי ניתן לשלוט ולשנות את כל פעולות הוספת, שינוי ומחיקת רשומות שהוצאו בקובץ נפרד מבלי לשנות את הקוד המשתמש בהן. זה בטוח ויעיל יותר.
ממשק מקורי מאובייקט נתונים
אם אתה לא לוקח בחשבון משתנים פשוטים, אזתוכנית מודרנית היא אוסף של אובייקטים. ככל שהבעיה נפתרת במיומנות רבה יותר כך מערכת העצמים המעוצבת והאינטראקציה שלהם זה עם זה יעילים יותר.
ברור שנתונים כותבים וקוראים פעולותלקבל הקשר אחר: אובייקט יכול לשמור את עצמו למסד הנתונים, יכול לשחזר את עצמו ממסד הנתונים, לבדוק את מצבו, להעביר תוכן לאובייקט אחר וכו '.
גישה זו מעבירה את מרכז הכובד מקידוד ישיר של הכנסת MySQL לשאילתות לממשק: scfAddObject ("contens", ...), המשמש באופן שונה לכל אובייקט.
לאובייקט התאריך תהיה שיטה myDate-> שמור () ו-יקרא scfAddObject ("12/04/2016"), ואובייקט המשתמש currUser-> שמור () יכין scfAddObject ("איבנוב - כניסה"), ... בעוד שכל קריאה ל scfAddObject () תביא לבניית גרסה משלה לשאילתת MySQL הכניסו לתוך ...