Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 11 kết quả

Đề tài: Backup CSDL bằng Savedialog được nhưng hiện thông tin thất bại!!!

  1. #1
    Ngày gia nhập
    10 2009
    Bài viết
    63

    Mặc định Backup CSDL bằng Savedialog được nhưng hiện thông tin thất bại!!!

    Visual C# Code:
    1.         private void bntBackup_Click(object sender, EventArgs e)
    2.         {
    3.             saveFileDialog1.DefaultExt = ".bak";
    4.             saveFileDialog1.Filter = "Files (*.bak)|*.bak|All files (*.*)|*.*";
    5.  
    6.             try
    7.             {
    8.                 if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    9.                 {
    10.                     string sql = "Backup database QLTC to disk ='" + saveFileDialog1.FileName + "'";
    11.                     if(connData.executeQuery(sql))
    12.                         MessageBoxEx.Show("Sao lưu thành công thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
    13.                     else
    14.  
    15.                          MessageBoxEx.Show("Thất bại");
    16.                 }
    17.             }
    18.             catch
    19.             {
    20.                
    21.             }
    - Mình backup nó ra file được đúng với dung lượng mình thực hiện câu truy vấn trên sql, nhung nó xuất ra câu thông báo MessageBoxEx.Show("Thất bại");. Các bạn giúp mình với!!!!!
    Bảo đảm với các bạn hàm executeQuery() đúng bởi mình thực hiện insert, update được

  2. #2
    Ngày gia nhập
    12 2010
    Bài viết
    85

    Theo mình là vậy nè bạn:

    Visual C# Code:
    1.             SaveFileDialog save = new SaveFileDialog();
    2.             save.InitialDirectory = @"D:\";
    3.             save.Filter = "Đuôi tập tin: (*.bak)|*.bak";
    4.             save.AddExtension = true;
    5.             save.DefaultExt = "bak";
    6.             save.RestoreDirectory = true;
    7.             save.Title = "Chon duong dan luu file du phong!";
    8.            
    9.             if (save.ShowDialog() == DialogResult.OK)
    10.             {
    11.                 try
    12.                 {
    13.                     kn.ExcuteNonQuery("BACKUP DATABASE [QLTC] TO DISK = N'" + save.FileName + "'");
    14.                     MessageBoxEx.Show("Sao lưu thành công thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
    15.                 }
    16.                 catch
    17.                 {
    18.                     MessageBoxEx.Show("Thất bại");
    19.                 }  
    20. //Theo mình nên để thông báo thế này hay hơn.
    21.               // catch (Exception ex)
    22.                 //{                    
    23.                //    MessageBox.Show(ex.Message,"",MessageBoxButtons.OK,MessageBoxIcon.Error);
    24.                //    System.Environment.Exit(0);
    25.                // }                
    26.             }
    - Mình đã test thử và ok.
    Học hỏi - học hỏi - học hỏi tới cùng
    --> Học hỏi đến khi nào ra vấn đề thì học hỏi vấn đề khác
    và học hỏi - học hỏi - học hỏi đến
    .

  3. #3
    Ngày gia nhập
    10 2009
    Bài viết
    63

    Thank bạn!!!
    Vấn đề đó là khi save chồng lên thì dung lượn tăng gấp đôi!!!!!

  4. #4
    Ngày gia nhập
    12 2010
    Bài viết
    85

    À mình quên mất. Mình viết 1 lớp kết nối csdl riêng. Khi gọi mình đặt tên là "kn"
    Học hỏi - học hỏi - học hỏi tới cùng
    --> Học hỏi đến khi nào ra vấn đề thì học hỏi vấn đề khác
    và học hỏi - học hỏi - học hỏi đến
    .

  5. #5
    Ngày gia nhập
    12 2010
    Bài viết
    85

    Trích dẫn Nguyên bản được gửi bởi suzuke169 Xem bài viết
    Thank bạn!!!
    Vấn đề đó là khi save chồng lên thì dung lượn tăng gấp đôi!!!!!
    Sau lại tăng gấp đôi dung lượng nhỉ? Code bakup của mình và của bạn y hệt mà? Chỉ khác vị trí try catch.
    Học hỏi - học hỏi - học hỏi tới cùng
    --> Học hỏi đến khi nào ra vấn đề thì học hỏi vấn đề khác
    và học hỏi - học hỏi - học hỏi đến
    .

  6. #6
    Ngày gia nhập
    08 2011
    Nơi ở
    Hà Nội | http://ipmac.vn
    Bài viết
    198

    Mặc định Backup CSDL bằng Savedialog được nhưng hiện thông tin thất bại!!!

    Trích dẫn Nguyên bản được gửi bởi sonsonsonson Xem bài viết
    Sau lại tăng gấp đôi dung lượng nhỉ? Code bakup của mình và của bạn y hệt mà? Chỉ khác vị trí try catch.
    Vì lệnh BACKUP Database bạn cần chỉ định chế độ là OVERWRITE hay APPEND.
    Mặc định nó là append nên sẽ ghi them vào cuối file bak.
    CHỉ định chế độ OVERWRITE bằng option INIT, APPEND bằng optin NOINIT
    Bạn tra cứu thêm về câu lệnh BACKUP ở đây nhé :http://msdn.microsoft.com/en-us/library/ms186865.aspx

    http://forums.congdongcviet.com/showthread.php?t=64573
    Bao chàng trai không tiếc tuổi xuân đang viết nhiều chương trình
    Em đẹp xinh cũng quyết lập công chưa muốn lấy chồng
    http://ipmac.vn/ <- Học lập trình ... sư
    http://laptrinh.tv/ <- Kênh chia sẻ video học IT
    http://www.youtube.com/user/anhnt3 <- Video thực hành lập trình... sư từ A-Z

  7. #7
    Ngày gia nhập
    10 2009
    Bài viết
    63

    Trích dẫn Nguyên bản được gửi bởi anhnt3 Xem bài viết
    Vì lệnh BACKUP Database bạn cần chỉ định chế độ là OVERWRITE hay APPEND.
    Mặc định nó là append nên sẽ ghi them vào cuối file bak.
    CHỉ định chế độ OVERWRITE bằng option INIT, APPEND bằng optin NOINIT
    Bạn tra cứu thêm về câu lệnh BACKUP ở đây nhé :http://msdn.microsoft.com/en-us/library/ms186865.aspx

    http://forums.congdongcviet.com/showthread.php?t=64573
    Tiếng anh không, mà cũng không pro lắm, bạn hướng dẫn tí đi!!!!

  8. #8
    Ngày gia nhập
    12 2010
    Bài viết
    85

    Trích dẫn Nguyên bản được gửi bởi anhnt3 Xem bài viết
    Vì lệnh BACKUP Database bạn cần chỉ định chế độ là OVERWRITE hay APPEND.
    Mặc định nó là append nên sẽ ghi them vào cuối file bak.
    CHỉ định chế độ OVERWRITE bằng option INIT, APPEND bằng optin NOINIT
    Bạn tra cứu thêm về câu lệnh BACKUP ở đây nhé :http://msdn.microsoft.com/en-us/library/ms186865.aspx

    http://forums.congdongcviet.com/showthread.php?t=64573
    Hiểu thì đã hiểu, nhưng làm sao để chỉ định chế độ overwrite bằng option init là 1 vấn đề khó.
    Học hỏi - học hỏi - học hỏi tới cùng
    --> Học hỏi đến khi nào ra vấn đề thì học hỏi vấn đề khác
    và học hỏi - học hỏi - học hỏi đến
    .

  9. #9
    Ngày gia nhập
    10 2009
    Bài viết
    63

    Code:
    string sql = "BACKUP DATABASE [QLTC] TO DISK = N'" + saveFileDialog1.FileName + "' WITH INIT";
    Vậy sẽ không + thêm dung lượng!!!!!

  10. #10
    Ngày gia nhập
    12 2010
    Bài viết
    85

    Trích dẫn Nguyên bản được gửi bởi suzuke169 Xem bài viết
    Code:
    string sql = "BACKUP DATABASE [QLTC] TO DISK = N'" + saveFileDialog1.FileName + "' WITH INIT";
    Vậy sẽ không + thêm dung lượng!!!!!
    Mắc cỡ quá, không ngờ mình định giải quyết vấn đề củ bạn, ai dè...bạn giải quyết vấn đề giùm mình. Cảm ơn bạn nhe!
    Học hỏi - học hỏi - học hỏi tới cùng
    --> Học hỏi đến khi nào ra vấn đề thì học hỏi vấn đề khác
    và học hỏi - học hỏi - học hỏi đến
    .

Các đề tài tương tự

  1. Backup CSDL dùng code C# thế lào?
    Gửi bởi Linhnh trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 24-08-2013, 04:01 AM
  2. Lỗi backup csdl sql trong project "báo thành công mà backup không được"
    Gửi bởi t2t2t trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 17-11-2011, 07:55 AM
  3. MS SQL với C# Backup trên Server A và Restore ở Server B cùng cấu trúc CSDL như thế nào?
    Gửi bởi snake_programmer trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 1
    Bài viết cuối: 23-08-2011, 09:19 AM
  4. Backup CSDL MS SQL (C#) tự động?
    Gửi bởi nth4 trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 4
    Bài viết cuối: 25-08-2009, 09:44 AM
  5. Làm sao để tạo nút backup CSDL
    Gửi bởi LOVEAi trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 07-06-2009, 03:37 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn