שינויים מבניים בטבלה של mySQL
במדריך זה נלמד כיצד לערוך שינויים מבניים בטבלת של mySQL. בחלק הראשון של המדריך, נלמד כיצד להוסיף, למחוק ולערוך עמודות, ובחלק השני, נלמד כיצד לשנות את שמה של טבלה במסד הנתונים וכיצד למחוק אותה.
הפקודה ALTER TABLE
ALTER TABLE היא פקודה הגורמת לשינוי עמודות בטבלה במסד הנתונים.
לדוגמה, כדי להקנות ל-primary_key של הטבלה users יכולות של AUTO_INCREMENT:
ALTER TABLE users
MODIFY id int(11) AUTO_INCREMENT;
ועכשיו האינדקס יתחיל לספור מ-1, וכל רשומה שנוסיף תקבל ערך ייחודי הגבוה ב-1 מאינדקס הרשומה הקודמת. הרשומה הראשונה תקבל אינדקס 1, הרשומה השנייה תקבל באופן אוטומטי אינדקס 2, הרשומה השלישית תקבל אוטומטית אינדקס 3. וכיו"ב.
לעיתים, נרצה להתחיל מערך שונה מ-1. לדוגמה, אם יש לנו כבר טבלה עם 99 רשומות נרצה להתחיל את הספירה של האינדקס מערך הגבוה ממספר הרשומות הקיימות. אז אנחנו יכולים להורות ל-mySQL להמשיך מאינדקס 100:
ALTER TABLE users
AUTO_INCREMENT = 100;
נבדוק ע"י כך שנכניס רשומה ונראה איזה אינדקס היא תקבל:
INSERT INTO users (id, first_name, birthdate) VALUES (NULL,'Moshe','1993-05-07');
נציץ בטבלה כדי לראות מה קיבלנו:
הוספת עמודה
נוסיף עמודה ששמה approved לטבלה users:
ALTER TABLE users
ADD COLUMN approved tinyint(1) NOT NULL DEFAULT 0;
- השאילתה גרמה להוספת העמודה "approved" לסוף רשימת העמודות.
כדי להוסיף עמודה לתחילת רשימת העמודות נשתמש בדירקטיבה FIRST:
ALTER TABLE users
ADD COLUMN approved tinyint(1) NOT NULL DEFAULT 0 FIRST;
נשתמש בדירקטיבה AFTER כדי להוסיף עמודה לעמדה מסוימת. לדוגמה, אחרי העמודה first_name:
ALTER TABLE users
ADD COLUMN approved tinyint(1) NOT NULL DEFAULT 0 AFTER first_name;
שינוי התכונות של עמודה
סוג הנתונים tinyint יכול לקבל ערכים שליליים. כדי למנוע קבלת ערכים שליליים נשנה את העמודה על ידי כך שנוסיף לה תכונה (attribute) ששמה UNSIGNED:
ALTER TABLE users
MODIFY COLUMN approved tinyint(1) UNSIGNED NOT NULL DEFAULT 0;
שינוי שם העמודה
כדי לשנות את שמה של עמודה נוסיף לפקודה ALTER TABLE את הפקודה CHANGE.
נשנה את שם העמודה מ-approved ל-agreed:
ALTER TABLE users
CHANGE approved agreed tinyint(1) UNSIGNED NOT NULL DEFAULT 0;
מחיקת עמודה
כדי למחוק עמודה נוסיף לפקודה ALTER TABLE את הפקודה DROP COLUMN.
נמחק את העמודה agreed:
ALTER TABLE users
DROP COLUMN agreed;
שים לב! כשאתה מוחק מידע ב-mySQL לא ניתן לשחזר אותו. אז לפני שאתה נוקט בפעולות שאתה עלול להצטער עליהם הקפד לגבות את מסד הנתונים.
שינוי שם הטבלה ומחיקה
נשתמש בפקודה RENAME כדי לשנות את שם הטבלה:
RENAME TABLE users TO people;
נשתמש בפקודה DROP TABLE כדי למחוק טבלה:
DROP TABLE people;
אהבתם? לא אהבתם? דרגו!
0 הצבעות, ממוצע 0 מתוך 5 כוכבים
המדריכים באתר עוסקים בנושאי תכנות ופיתוח אישי. הקוד שמוצג משמש להדגמה ולצרכי לימוד. התוכן והקוד המוצגים באתר נבדקו בקפידה ונמצאו תקינים. אבל ייתכן ששימוש במערכות שונות, דוגמת דפדפן או מערכת הפעלה שונה ולאור השינויים הטכנולוגיים התכופים בעולם שבו אנו חיים יגרום לתוצאות שונות מהמצופה. בכל מקרה, אין בעל האתר נושא באחריות לכל שיבוש או שימוש לא אחראי בתכנים הלימודיים באתר.
למרות האמור לעיל, ומתוך רצון טוב, אם נתקלת בקשיים ביישום הקוד באתר מפאת מה שנראה לך כשגיאה או כחוסר עקביות נא להשאיר תגובה עם פירוט הבעיה באזור התגובות בתחתית המדריכים. זה יכול לעזור למשתמשים אחרים שנתקלו באותה בעיה ואם אני רואה שהבעיה עקרונית אני עשוי לערוך התאמה במדריך או להסיר אותו כדי להימנע מהטעיית הציבור.
שימו לב! הסקריפטים במדריכים מיועדים למטרות לימוד בלבד. כשאתם עובדים על הפרויקטים שלכם אתם צריכים להשתמש בספריות וסביבות פיתוח מוכחות, מהירות ובטוחות.
המשתמש באתר צריך להיות מודע לכך שאם וכאשר הוא מפתח קוד בשביל פרויקט הוא חייב לשים לב ולהשתמש בסביבת הפיתוח המתאימה ביותר, הבטוחה ביותר, היעילה ביותר וכמובן שהוא צריך לבדוק את הקוד בהיבטים של יעילות ואבטחה. מי אמר שלהיות מפתח זו עבודה קלה ?
השימוש שלך באתר מהווה ראייה להסכמתך עם הכללים והתקנות שנוסחו בהסכם תנאי השימוש.