דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. MDF גיבוי נתונים

MDF גיבוי נתונים

מתוזמן נעוץ נעול הועבר ארכיון code613m
38 פוסטים 6 כותבים 2.6k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מנותק
    dovidD מנותק
    dovid ניהול
    כתב ב נערך לאחרונה על ידי
    #16

    @KingYes

    אין באקסס אפשרות לייצא את כל הטבלאות (Structure and Data) בפורמט SQL לקובץ טקסט פשוט?

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

    פורסם במקור בפורום CODE613 ב21/01/2014 16:13 (+02:00)

    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

    בכל נושא אפשר ליצור קשר dovid@tchumim.com

    תגובה 1 תגובה אחרונה
    0
    • רחמיםר מנותק
      רחמיםר מנותק
      רחמים מורחק
      כתב ב נערך לאחרונה על ידי
      #17

      @דוד ל.ט.

      השחזור הוא שאילתה שלך וממילא אתה שולט על כל חלקיק עדכון (אתה יכול לשחזר רק רבע עמודה).

      את מתכוון לשאילתא כזו:

      UPDATE tblName
      SET column1=value1, column2=value2
      WHERE ID=1
      

      בשיטה הזו צריך ללכת ID אחר ID ושדה אחר שדה וזה מצויין כשרוצים לשחזר חלק מהרשומות, אבל האם יש דרך לשחזר טבלה שלמה בשאילתא אחת שתחליף את כל הרשומות הקיימות ברשומות שבטבלה מהגיבוי ?
      תודה.

      פורסם במקור בפורום CODE613 ב21/01/2014 22:54 (+02:00)

      תגובה 1 תגובה אחרונה
      0
      • clickoneC מנותק
        clickoneC מנותק
        clickone
        כתב ב נערך לאחרונה על ידי
        #18

        @רחמים

        @דוד ל.ט.

        השחזור הוא שאילתה שלך וממילא אתה שולט על כל חלקיק עדכון (אתה יכול לשחזר רק רבע עמודה).

        את מתכוון לשאילתא כזו:

        UPDATE tblName
        SET column1=value1, column2=value2
        WHERE ID=1
        

        בשיטה הזו צריך ללכת ID אחר ID ושדה אחר שדה וזה מצויין כשרוצים לשחזר חלק מהרשומות, אבל האם יש דרך לשחזר טבלה שלמה בשאילתא אחת שתחליף את כל הרשומות הקיימות ברשומות שבטבלה מהגיבוי ?
        תודה.

        פשוט תחליף את שם הטבלה :lol: :lol: :lol:

        פורסם במקור בפורום CODE613 ב21/01/2014 23:06 (+02:00)

        אין טסט כמו פרודקשן.

        המייל שלי urivpn@gmail.com

        תגובה 1 תגובה אחרונה
        1
        • רחמיםר מנותק
          רחמיםר מנותק
          רחמים מורחק
          כתב ב נערך לאחרונה על ידי
          #19

          תודה,
          ומה התשובה לזה:
          @רחמים

          רגע, איך עושים שאילתת INTO כאשר ה SELECT הוא מתוך MDF אחד, וה INTO צריך ליצור טבלה ב MDF אחר ?

          פורסם במקור בפורום CODE613 ב22/01/2014 08:07 (+02:00)

          תגובה 1 תגובה אחרונה
          0
          • dovidD מנותק
            dovidD מנותק
            dovid ניהול
            כתב ב נערך לאחרונה על ידי
            #20

            @רחמים

            בשיטה הזו צריך ללכת ID אחר ID ושדה אחר שדה וזה מצויין כשרוצים לשחזר חלק מהרשומות, אבל האם יש דרך לשחזר טבלה שלמה בשאילתא אחת שתחליף את כל הרשומות הקיימות ברשומות שבטבלה מהגיבוי ?
            תודה.

            כן.
            שאילתה די פשוטה.

            פורסם במקור בפורום CODE613 ב22/01/2014 11:17 (+02:00)

            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

            בכל נושא אפשר ליצור קשר dovid@tchumim.com

            תגובה 1 תגובה אחרונה
            1
            • רחמיםר מנותק
              רחמיםר מנותק
              רחמים מורחק
              כתב ב נערך לאחרונה על ידי
              #21

              @דוד ל.ט.

              כן.
              שאילתה די פשוטה.

              @ClickOne

              פשוט תחליף את שם הטבלה

              יש כמה דברים שמפריעים לכאורא:

              1. העמודה של ה ID היא אוטומטית כך שאי אפשר לתת לה ערך אלא רק המסד נותן ערך
              2. יש קשרי גומלין בחלק מהשדות
                וכל זה בטבלה המקורית אבל הטבלה שבגיבוי היא ללא קשרים וללא ערכים אוטומטיים, אז כאשר אני מנסה להכניס את של זה בזה אני מקבל שגיאות.

              דבר נוסף מן הסתם יש הבדל בכמות הרשומות בין הטבלה המקורית לבין טבלה שמהגיבוי וא''כ צריך להוסיף או למחוק רשומות ולא רק לעדכן.

              מהסיבות של קישרי הגומלין לא יכולתי לעשות את הפתרון שנתן ClickOne דהיינו למחוק את הטבלה הישנה ולתת לטבלה של הגיבוי את השם של הטבלה המקורית.

              גם עיינתי כאןולא ראיתי משהו שיכול לעזור.

              פורסם במקור בפורום CODE613 ב22/01/2014 16:03 (+02:00)

              תגובה 1 תגובה אחרונה
              0
              • dovidD מנותק
                dovidD מנותק
                dovid ניהול
                כתב ב נערך לאחרונה על ידי
                #22

                הID זה טוב שא"א לשנות, זה רק עוזר לך.
                הקשרי גומלין אני לא מבין מה מפריע להם, אבל תוכל להסירם ולהחזירם או להוריד את האכיפה מהם.

                בקשר לקישור שהבאת, יש שמה חידושים שיכולים לעזור מאוד לזה : http://stackoverflow.com/a/9241260/1271037

                פורסם במקור בפורום CODE613 ב22/01/2014 17:04 (+02:00)

                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                תגובה 1 תגובה אחרונה
                1
                • רחמיםר מנותק
                  רחמיםר מנותק
                  רחמים מורחק
                  כתב ב נערך לאחרונה על ידי
                  #23

                  טוב, אז נלך במהלך ששחזור הוא יהיה מחיקת הטבלה המקורית ושינוי שם לטבלת הגיבוי, כעת אין לי בעיה עם ה ID וגם לא עם השורות יתרות או חסרות,

                  1. איך בדיוק אני יכול להסתדר עם הקשרי גומלין, שהרי כשאני מוחק את הטבלה המקורית כבר אני מקבל שגיאה כיון הטבלה המקורית היא טבלת אב לגבי טבלאות אחרות וה ID של הטבלה המקורית נמצא כמפתח זר בטבלאות אחרות?

                  2. ואם בשביל זה אני צריך לשנות את ההגדרות של הקשרי גומלין בכל הטבלאות המקשרות לטבלה המקורית, איך אני אעשה את זה, איך אדע באלו טבלאות מדובר ואיזה הגדרה צריך לשנות בקשר הגומלין?

                  3. ואיך בכלל משנים הגדרות של קשרי גומלין בשפת SQL?

                  4. ואחר שינוי השם של טבלת הגיבוי יהיה צריך גם להחזיר את ההגדרות של הקשרי גומלין בכל הטבלאות המקושורת.

                  תודה לכולם!

                  פורסם במקור בפורום CODE613 ב22/01/2014 18:30 (+02:00)

                  תגובה 1 תגובה אחרונה
                  0
                  • רחמיםר מנותק
                    רחמיםר מנותק
                    רחמים מורחק
                    כתב ב נערך לאחרונה על ידי
                    #24

                    אז מצאתי את השאילתא הבאה כדי לקבל את כל הקשרי גומלין בהם הטבלה המקורית היא טבלת האב:

                    SELECT Main.TABLE_NAME AS ParentTable, Child.TABLE_NAME AS ChildTableName, Cons.COLUMN_NAME AS PKey_Column, RefCons.COLUMN_NAME AS ReferencingColumnName, 
                                rc.CONSTRAINT_NAME AS FK_NAME
                    FROM  INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS Child INNER JOIN
                                INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS rc ON rc.CONSTRAINT_SCHEMA = Child.CONSTRAINT_SCHEMA AND 
                                rc.CONSTRAINT_NAME = Child.CONSTRAINT_NAME INNER JOIN
                                INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS Main ON Main.CONSTRAINT_SCHEMA = rc.UNIQUE_CONSTRAINT_SCHEMA AND 
                                Main.CONSTRAINT_NAME = rc.UNIQUE_CONSTRAINT_NAME INNER JOIN
                                INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE AS RefCons ON RefCons.CONSTRAINT_SCHEMA = Child.CONSTRAINT_SCHEMA AND 
                                RefCons.CONSTRAINT_NAME = Child.CONSTRAINT_NAME INNER JOIN
                                INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE AS Cons ON Cons.CONSTRAINT_SCHEMA = Main.CONSTRAINT_SCHEMA AND 
                                Cons.CONSTRAINT_NAME = Main.CONSTRAINT_NAME
                    WHERE (Main.TABLE_NAME = N'שם הטבלה המקורית')
                    

                    עריכה:
                    שיפצתי משמעותית את השאילתא.

                    פורסם במקור בפורום CODE613 ב22/01/2014 18:46 (+02:00)

                    תגובה 1 תגובה אחרונה
                    0
                    • רחמיםר מנותק
                      רחמיםר מנותק
                      רחמים מורחק
                      כתב ב נערך לאחרונה על ידי
                      #25

                      לשינוי שם מצאתי את הקוד הבא:

                      sp_rename old_table_name, new_table_name
                      

                      פורסם במקור בפורום CODE613 ב22/01/2014 18:47 (+02:00)

                      תגובה 1 תגובה אחרונה
                      0
                      • dovidD מנותק
                        dovidD מנותק
                        dovid ניהול
                        כתב ב נערך לאחרונה על ידי
                        #26

                        אני כבר יודע כמה שנים SQL ברמה בסיסית,
                        ותשמע לי, המהירות בה אתה רוצה לשלוט בעסק לדעתי גבוהה מהאפשרי.

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

                        אתה לא חייב בכלום להתייחס לדברי, ואין כאן שום פקודה, אלא ניסיון להסביר את עצמי אם אני לא "נחלץ לעזור".

                        פורסם במקור בפורום CODE613 ב22/01/2014 19:00 (+02:00)

                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                        תגובה 1 תגובה אחרונה
                        1
                        • רחמיםר מנותק
                          רחמיםר מנותק
                          רחמים מורחק
                          כתב ב נערך לאחרונה על ידי
                          #27

                          תודה דוד אתה אלוף :smile:

                          אז בא נראה לאט לאט דבר ראשון איך יוצרים קשר גומלין בין טבלאות, ובמילים אחרות איך מגדירים שעמודה מסויימת בטבלה א' תהיה מפתח זר של המפתח הראשי של טבלה ב', והנה הקוד שמצאתי כאן:

                          ALTER TABLE Person.ContactBackup
                          ADD CONSTRAINT FK_ContactBacup_Contact FOREIGN KEY (ContactID)
                              REFERENCES Person.Person (BusinessEntityID) ;
                          

                          פורסם במקור בפורום CODE613 ב22/01/2014 19:36 (+02:00)

                          תגובה 1 תגובה אחרונה
                          0
                          • רחמיםר מנותק
                            רחמיםר מנותק
                            רחמים מורחק
                            כתב ב נערך לאחרונה על ידי
                            #28

                            שלב ב'

                            אחרי שאנו יודעים איך יוצרים קשר גומלין אנו יכולים להתקדם לאיך מוחקים קשר קיים:

                            ALTER TABLE Person.ContactBackup
                            DROP CONSTRAINT FK_ContactBacup_Contact ;
                            

                            פורסם במקור בפורום CODE613 ב22/01/2014 19:39 (+02:00)

                            תגובה 1 תגובה אחרונה
                            0
                            • רחמיםר מנותק
                              רחמיםר מנותק
                              רחמים מורחק
                              כתב ב נערך לאחרונה על ידי
                              #29

                              שלב ג'
                              אחרי שאנו יודעים מה הם הקשרי הגומלין הקיימים ע''י השאילתא הארוכה הנ''ל, אנו יכולים למחוק את כל הקשרי גומלין השייכים לטבלה המקורית וכנ''ל בשלב ב'
                              אחר שאין קשרי גומלין אנו יכולים למחוק את הטבלה המקורית עצמה כך:

                              DROP TABLE [שם הטבלה]
                              

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

                              שלב ה'
                              התגובות שלכם בבקשה...

                              פורסם במקור בפורום CODE613 ב22/01/2014 19:46 (+02:00)

                              תגובה 1 תגובה אחרונה
                              0
                              • רחמיםר מנותק
                                רחמיםר מנותק
                                רחמים מורחק
                                כתב ב נערך לאחרונה על ידי
                                #30

                                @שמואל

                                אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערב
                                ובמקרה הצורך הוא יוחלף

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

                                פורסם במקור בפורום CODE613 ב26/01/2014 09:59 (+02:00)

                                תגובה 1 תגובה אחרונה
                                0
                                • א מנותק
                                  א מנותק
                                  ארכיטקט
                                  כתב ב נערך לאחרונה על ידי
                                  #31

                                  @רחמים

                                  @שמואל
                                  אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערב

                                  ובמקרה הצורך הוא יוחלף

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

                                  באמת מוזר, הרי windows יודע להעתיק קובץ שנמצא בשימוש, קריאה לא מפריעה רק כתיבה. ואילו במסד נתונים זה לא נותן משום מה. לא ברור איך להתגבר על זה. צריך לכאורה לנתק את כל השירותים של sql כדי לשחרר את הקובץ, ואז להפעיל אותם בחזרה, זה עניין של שבריר שניה, והמשתמשים אפילו לא ירגישו אני מקווה.

                                  פורסם במקור בפורום CODE613 ב26/01/2014 10:16 (+02:00)

                                  אידיאולוגיות גדולות נכנסות למטחנה של עולם המעשה ויוצאות ממנו בפירורים (ווינסטון צ'רצ'יל, סתם סתם, זה שלי)

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • clickoneC מנותק
                                    clickoneC מנותק
                                    clickone
                                    כתב ב נערך לאחרונה על ידי
                                    #32

                                    @ארכיטקט

                                    @רחמים
                                    @שמואל
                                    אולי אפשר שהתוכנה פשוט תעתיק את הקובץ כל ערב

                                    ובמקרה הצורך הוא יוחלף

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

                                    באמת מוזר, הרי windows יודע להעתיק קובץ שנמצא בשימוש, קריאה לא מפריעה רק כתיבה. ואילו במסד נתונים זה לא נותן משום מה. לא ברור איך להתגבר על זה. צריך לכאורה לנתק את כל השירותים של sql כדי לשחרר את הקובץ, ואז להפעיל אותם בחזרה, זה עניין של שבריר שניה, והמשתמשים אפילו לא ירגישו אני מקווה.

                                    תנסה להעתיק עם פונקציית API.
                                    API מעתיק אפילו שהקובץ תפוס.

                                    פורסם במקור בפורום CODE613 ב26/01/2014 11:39 (+02:00)

                                    אין טסט כמו פרודקשן.

                                    המייל שלי urivpn@gmail.com

                                    תגובה 1 תגובה אחרונה
                                    0
                                    • א מנותק
                                      א מנותק
                                      ארכיטקט
                                      כתב ב נערך לאחרונה על ידי
                                      #33

                                      @ClickOne

                                      תנסה להעתיק עם פונקציית API.
                                      API מעתיק אפילו שהקובץ תפוס.

                                      זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......

                                      פורסם במקור בפורום CODE613 ב26/01/2014 12:32 (+02:00)

                                      אידיאולוגיות גדולות נכנסות למטחנה של עולם המעשה ויוצאות ממנו בפירורים (ווינסטון צ'רצ'יל, סתם סתם, זה שלי)

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • dovidD מנותק
                                        dovidD מנותק
                                        dovid ניהול
                                        כתב ב נערך לאחרונה על ידי
                                        #34

                                        @ארכיטקט

                                        @ClickOne
                                        תנסה להעתיק עם פונקציית API.

                                        API מעתיק אפילו שהקובץ תפוס.

                                        זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......

                                        אני סבור שהסיבה שהוא לא מעתיק זה לא מחוסר יכולת אלא מהנחה שזה לא טוב למשתמש, הוא יקבל קובץ בלתי ניתן לפתיחה או פגום, בהרבה מקרים, וגם לא מעודכן.

                                        פורסם במקור בפורום CODE613 ב26/01/2014 13:19 (+02:00)

                                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • clickoneC מנותק
                                          clickoneC מנותק
                                          clickone
                                          כתב ב נערך לאחרונה על ידי
                                          #35

                                          @דוד ל.ט.

                                          @ארכיטקט
                                          @ClickOne
                                          תנסה להעתיק עם פונקציית API.

                                          API מעתיק אפילו שהקובץ תפוס.

                                          זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......

                                          אני סבור שהסיבה שהוא לא מעתיק זה לא מחוסר יכולת אלא מהנחה שזה לא טוב למשתמש, הוא יקבל קובץ בלתי ניתן לפתיחה או פגום, בהרבה מקרים, וגם לא מעודכן.

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

                                          פורסם במקור בפורום CODE613 ב26/01/2014 13:34 (+02:00)

                                          אין טסט כמו פרודקשן.

                                          המייל שלי urivpn@gmail.com

                                          תגובה 1 תגובה אחרונה
                                          0

                                          • 1
                                          • 2
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום