מה יותר יעיל??

yochi24

New member
מה יותר יעיל??

ב-sql server לרוקן טבלה (truncate) ולאתחל אותה מחדש או לעשות לה drop אם היא קיימת ליצור אותה מחדש ורק אז לאתחל אותה מחדש
 

deja

New member
כאשר

מבצעים truncate לטבלה, DBMS מבצע מחיקה מהירה של הטבלה היות והוא לא כותב את הנתונים ל-log מה שאין כך בביצוע delete, ז"א ביצוע מהיר מאוד. כאשר מבצעים drop לטבלה DBMS מעדכן את כל טבלאות המערכת (Data Dictionary), כך גם כאשר יוצרים את הטבלה מחדש. אם יש אינדקסים לטבלה גם הם מתעדכנים בהתאם אך לא נהרסים אוטומאטית בביצוע drop מפני שאותם אינדקסים הם ישויות נפרדות (לא בכל המקרים). insert יש לך בכל מקרה, גם ב-truncate וגם ב-drop. שורה תחתונה: ב-truncate ו-insert יש פחות פעילות מאשר drop וכו´. בנוסף, DBMS מסוימים מכילים נתונים סטטיסטים לגבי אותן טבלאות, כך שחובה להריץ חישובים סטטיסטים בסיום ה-insert.
 
למעלה