MDF גיבוי נתונים
-
אני כבר יודע כמה שנים SQL ברמה בסיסית,
ותשמע לי, המהירות בה אתה רוצה לשלוט בעסק לדעתי גבוהה מהאפשרי.כמו"כ קשה לנסות לעזור להפצצות לא מסודרות שכאלו, מונחות מטרה (איך לגבות את המסד) מאשר לימוד (איך כותבים קשר גומלין בSQL SERVER).
תתרכז במה שאתה רוצה ללמוד, ותלמד צעד אחר צעד.
ואז באמת אשמח לעזור (ובעצם ללמוד איתך). כשאני עוזר כעת זה יותר לעבוד מאשר לעזור.אתה לא חייב בכלום להתייחס לדברי, ואין כאן שום פקודה, אלא ניסיון להסביר את עצמי אם אני לא "נחלץ לעזור".
פורסם במקור בפורום CODE613 ב22/01/2014 19:00 (+02:00)
-
תודה דוד אתה אלוף
אז בא נראה לאט לאט דבר ראשון איך יוצרים קשר גומלין בין טבלאות, ובמילים אחרות איך מגדירים שעמודה מסויימת בטבלה א' תהיה מפתח זר של המפתח הראשי של טבלה ב', והנה הקוד שמצאתי כאן:
ALTER TABLE Person.ContactBackup ADD CONSTRAINT FK_ContactBacup_Contact FOREIGN KEY (ContactID) REFERENCES Person.Person (BusinessEntityID) ;
פורסם במקור בפורום CODE613 ב22/01/2014 19:36 (+02:00)
-
שלב ג'
אחרי שאנו יודעים מה הם הקשרי הגומלין הקיימים ע''י השאילתא הארוכה הנ''ל, אנו יכולים למחוק את כל הקשרי גומלין השייכים לטבלה המקורית וכנ''ל בשלב ב'
אחר שאין קשרי גומלין אנו יכולים למחוק את הטבלה המקורית עצמה כך:DROP TABLE [שם הטבלה]
שלב ד'
כעת אפשר להחליף את השם של הטבלה מהגיבוי עם הקוד שכבר הוזכר, וליצור קשרי גומלין מחדש כנ''ל בשלב א'.שלב ה'
התגובות שלכם בבקשה...פורסם במקור בפורום CODE613 ב22/01/2014 19:46 (+02:00)
-
אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערב
ובמקרה הצורך הוא יוחלףניסיתי לעשות את זה אבל זה בלתי אפשרי כיון שהמסד נמצא בשימוש ואי אפשר להעתיק אותו רק לאחר שהתוכנה סגורה.
הדרך שאולי אפשרית זה ליצור יישום נפרד שתפקידו יהיה להעתיק את המסד, ומתוך התוכנה נפעיל את היישום הזה ומייד נסגור את התוכנה עצמה, היישום החיצוני יעתיק את המסד ושוב יפתח את התוכנה.פורסם במקור בפורום CODE613 ב26/01/2014 09:59 (+02:00)
-
@שמואל
אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערבובמקרה הצורך הוא יוחלף
ניסיתי לעשות את זה אבל זה בלתי אפשרי כיון שהמסד נמצא בשימוש ואי אפשר להעתיק אותו רק לאחר שהתוכנה סגורה.
הדרך שאולי אפשרית זה ליצור יישום נפרד שתפקידו יהיה להעתיק את המסד, ומתוך התוכנה נפעיל את היישום הזה ומייד נסגור את התוכנה עצמה, היישום החיצוני יעתיק את המסד ושוב יפתח את התוכנה.באמת מוזר, הרי windows יודע להעתיק קובץ שנמצא בשימוש, קריאה לא מפריעה רק כתיבה. ואילו במסד נתונים זה לא נותן משום מה. לא ברור איך להתגבר על זה. צריך לכאורה לנתק את כל השירותים של sql כדי לשחרר את הקובץ, ואז להפעיל אותם בחזרה, זה עניין של שבריר שניה, והמשתמשים אפילו לא ירגישו אני מקווה.
פורסם במקור בפורום CODE613 ב26/01/2014 10:16 (+02:00)
-
@רחמים
@שמואל
אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערבובמקרה הצורך הוא יוחלף
ניסיתי לעשות את זה אבל זה בלתי אפשרי כיון שהמסד נמצא בשימוש ואי אפשר להעתיק אותו רק לאחר שהתוכנה סגורה.
הדרך שאולי אפשרית זה ליצור יישום נפרד שתפקידו יהיה להעתיק את המסד, ומתוך התוכנה נפעיל את היישום הזה ומייד נסגור את התוכנה עצמה, היישום החיצוני יעתיק את המסד ושוב יפתח את התוכנה.באמת מוזר, הרי windows יודע להעתיק קובץ שנמצא בשימוש, קריאה לא מפריעה רק כתיבה. ואילו במסד נתונים זה לא נותן משום מה. לא ברור איך להתגבר על זה. צריך לכאורה לנתק את כל השירותים של sql כדי לשחרר את הקובץ, ואז להפעיל אותם בחזרה, זה עניין של שבריר שניה, והמשתמשים אפילו לא ירגישו אני מקווה.
תנסה להעתיק עם פונקציית API.
API מעתיק אפילו שהקובץ תפוס.פורסם במקור בפורום CODE613 ב26/01/2014 11:39 (+02:00)
-
@ClickOne
תנסה להעתיק עם פונקציית API.API מעתיק אפילו שהקובץ תפוס.
זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......
אני סבור שהסיבה שהוא לא מעתיק זה לא מחוסר יכולת אלא מהנחה שזה לא טוב למשתמש, הוא יקבל קובץ בלתי ניתן לפתיחה או פגום, בהרבה מקרים, וגם לא מעודכן.
פורסם במקור בפורום CODE613 ב26/01/2014 13:19 (+02:00)
-
@דוד ל.ט.
@ארכיטקט
@ClickOne
תנסה להעתיק עם פונקציית API.API מעתיק אפילו שהקובץ תפוס.
זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......
אני סבור שהסיבה שהוא לא מעתיק זה לא מחוסר יכולת אלא מהנחה שזה לא טוב למשתמש, הוא יקבל קובץ בלתי ניתן לפתיחה או פגום, בהרבה מקרים, וגם לא מעודכן.
לא. אם הוא לא מעתיק זה בגלל שווינדוס תופס את הקובץ. מייקרוסופט לא חשודים להבין עד כדי כך איזה קובץ המשתמש רוצה להעתיק ומה הוא רוצה לעשות איתו...
פורסם במקור בפורום CODE613 ב26/01/2014 13:34 (+02:00)
-
לא. אם הוא לא מעתיק זה בגלל שווינדוס תופס את הקובץ. מייקרוסופט לא חשודים להבין עד כדי כך איזה קובץ המשתמש רוצה להעתיק ומה הוא רוצה לעשות איתו...
When SQL services are running the SQLserver.exe process holds all the mdf/ldf files and will not let the users copy those files. Either perform any of the below
Detach the database
Take the database offline
Shutdown the SQL services and copy mdf / ldf files.פורסם במקור בפורום CODE613 ב26/01/2014 13:38 (+02:00)