تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
BackUp Database SQL 100%
#1
Star 
السلام عليكم

الكود التالي يقوم بعمل استعادة للنسخة الاحتياطية التي انشاتها مسبقا في SQL


إقتباس :RESTORE DATABASE ATA_S\SQLEXPRESS FROM disk=d:\da_data.sql


لكن تظهر هذه الرسالة ولا تتم الاستعادة



Huh Huh
الرد }}}}
تم الشكر بواسطة:
#2
وعليكم السلام ورحمة الله وبركاته
مفاد الرسالة قاعدة البيانات مستخدمة يعني فيه عامل اتصال فعال جرب تقطع الاتصال بقاعدة البيانات بشكل كامل وتعيد التجرية.
اوتابع هذا المثال 
In SQL Server
The following query gives the name of the database and the server name:
Select *  from sysservers  where srvproduct='SQL Server'
go
Select * from sysdatabases
Output
[صورة مرفقة: DatabaseName-and-ServerName-in-SQLServer.jpg]
If you want to restore a database from a backup file, just execute the following query in SQL Server Management Studio.
IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = 'test')
DROP DATABASE test RESTORE DATABASE test FROM DISK = 'E:/test.bak' 
The backup of the student database has been created on the given location.
Output
[صورة مرفقة: Restore-command-in-SQL-Server.jpg]
In Visual Studio 2010,
The SQL Server query above returns the server name and all database names. Now execute it using C# code. To do that create a Windows Forms application and drag and drop the following control onto the form.
[صورة مرفقة: Restore-form-in-Visual-Studio.jpg]
C# code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Data.SqlClient;
 
namespace SQLBackUpApp
{
    public partial class Form1 : Form
    {
        SqlConnection con;      
        SqlCommand cmd;
        SqlDataReader dr;
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            label3.Visible = false;
            serverName(".");          
        }
        public void serverName(string str)
        {
            con = new SqlConnection("Data Source=" + str + ";Database=Master;data source=.; uid=sa; pwd=Micr0s0ft;");
            con.Open();
            cmd = new SqlCommand("select *  from sysservers  where srvproduct='SQL Server'", con);
            dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                ComboBoxserverName.Items.Add(dr[2]);
            }
            dr.Close();
        }
 
        public void Createconnection()
        {
            con = new SqlConnection("Data Source=" + (ComboBoxserverName.Text) +";Database=Master;data source=.; uid=sa; pwd=Micr0s0ft;");
            con.Open();
            ComboBoxDatabaseName.Items.Clear();
            cmd = new SqlCommand("select * from sysdatabases", con);
            dr = cmd.ExecuteReader();
            while(dr.Read())
            {
                ComboBoxDatabaseName.Items.Add(dr[0]);
            }
            dr.Close();
        }
 
        public void query(string que)
        {
            // ERROR: Not supported in C#: OnErrorStatement
 
            cmd = new SqlCommand(que, con);
            cmd.ExecuteNonQuery();
        }
 
        public void blank(string str)
        {
            if (string.IsNullOrEmpty(ComboBoxserverName.Text) |string.IsNullOrEmpty(ComboBoxDatabaseName.Text))
            {
 
             // label3.Visible = true;
             MessageBox .Show("Server Name & Database can not be Blank");
             return;
            }
            else
            {                                
               if (str == "restore")
               {
                           OpenFileDialog1.ShowDialog();
               // string a = ComboBoxDatabaseName.Text.ToString();
                query("IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'" + ComboBoxDatabaseName.Text + "') DROP DATABASE " + ComboBoxDatabaseName.Text + " RESTORE DATABASE " + ComboBoxDatabaseName.Text + " FROM DISK = '" + OpenFileDialog1.FileName +"'");
                label3.Visible = true;
                label3.Text = "Database Backup file has been restore successfully";                   
                }              
            }
        }      
 
        private void ComboBoxserverName_SelectedIndexChanged(object sender,EventArgs e)
        {
            Createconnection();
        }     
 
        private void cmbrestore_Click(object sender, EventArgs e)
        {
            blank("restore");
        }    
    }
}
 
In the code above you can change the connection string corresponding to your database.
 
Now run the application and select the server name and database name to restore the database backup file.
[صورة مرفقة: DatabaseName-and-ServerName-to-Restore-i...Server.jpg]
Now click on the "Restore" Button and select the backup file location from the disk.
[صورة مرفقة: Database-restore-in-Visual-Studio.jpg]
Now open the selected database to see the backup file data.
------
المصدر
سبحان الله والحمدلله ولا إله إلا الله والله أكبر
 رَبِّ اغْفِرْ لِي وَلِوَالِدَيَّ
Heart
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985
#3
كيف ساقوم بعمل استعادة اذا قطع الاتصال
وانا اعمل على vb.net اما C# لا
الرد }}}}
تم الشكر بواسطة:
#4
كيف ستقوم بعمل استعادة اذا انقطع الاتصال؟
الاجابة:
بايقاف استخدام قاعدة البيانات المراد استبدالها بأخرى عندها تستطيع عمل الاتصال فقط لعملية Restoring Db
بالنسبة للكود كونه سي شارب وانت حا بب يكون فيجوال فهذا سهو مني
هنا مثال لما تريد
http://www.codeproject.com/Tips/279705/B...ing-VB-NET
واعذر لي تطفلي على موضوعك بارك الله فيك
سبحان الله والحمدلله ولا إله إلا الله والله أكبر
 رَبِّ اغْفِرْ لِي وَلِوَالِدَيَّ
Heart
الرد }}}}
تم الشكر بواسطة: khodor1985
#5
السلام عليكم أخي العزيز ورحمة الله وبركاته
نعم صحيح من الخطأ قطع الإتصال بقاعدة البيانات عند عمل الإستعادة، لا بد من عمل Offline لقاعدة البيانات قبل تنفيذ عملية الإستعادة، إليك الكود التالي :
PHP كود :
ALTER DATABASE [myDBSET OFFLINE WITH ROLLBACK IMMEDIATE;Restore Database [myDBFrom Disk 'ضع المسار هنا' 

أتمنى لك التوفيق
عن مولا نا علي ابن أبي طالب عليه السلام :
أحصد الشر من صدر غيرك بقلعه من صدرك.
الرد }}}}
تم الشكر بواسطة: أبو عمر
#6
http://vb4arb.com/vb/thread-16733.html
ان شاء الله تجد مرادك على عذا الرابط
أساتذتي الكرام
Heart أبوعمر/ سعود/ممدوح الخطيب Heart
شكرا لكم
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985
#7
مشكورين جميعاً ويعطيكم الف عافية
الكود التالي نجح في الاستعادة (khodor1985)
ALTER DATABASE [myDB] SET OFFLINE WITH ROLLBACK IMMEDIATE;Restore Database [myDB] From Disk = 'ضع المسار هنا'

Smile
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985
#8

.zip   مثال البكب.zip (الحجم : 112.3 ك ب / التحميلات : 27)
.zip   مثال البكب.zip (الحجم : 112.3 ك ب / التحميلات : 27) السلام عليكم ورحمة الله تفضل هذا البرنامج بس عدل عليه 

وحاول تتطور فيه عشان تصير تتلاعب بالكود
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Exclamation زر التراجع عن حفظ البيانات فى database noway 2 124 01-11-16, 06:01 PM
آخر رد: noway
  [VB.NET] عمل Setup او تحزيم لبروجكيت يحتوي SQl database بحيث يعمل على اي حاسبه لا تحتوي على SQ prog.alaa2012 4 202 16-09-16, 12:33 PM
آخر رد: prog.alaa2012
  مشكلة محيرة Date Time Database Kian Tech 8 273 16-08-16, 11:18 PM
آخر رد: الوادي
  Acces Database أوفيس Kian Tech 0 58 09-08-16, 06:00 PM
آخر رد: Kian Tech
  backup and restore Mostafa Yousry 1 163 24-12-15, 05:37 PM
آخر رد: boudyonline
  السلام عليكم اخواني محتاج خبير مختص ف Service Based DATABASE يفديني بالرد ثلاث اسئلة moh61 1 288 14-11-15, 05:48 AM
آخر رد: أبو عمر
  [سؤال] نقل بيانات جدول من dataset إلى قاعدة البيانات database عبد الله 3 748 12-06-15, 03:45 PM
آخر رد: عبد الله
  عمل Backup لقاعدة البيانات عن طريق FileCopy starosta 2 355 13-05-15, 11:47 AM
آخر رد: starosta
  كيف يتم البحث في جدولين في DataBase؟ المشاعر 7 1,807 17-08-14, 03:07 PM
آخر رد: Abu Ehab
  تعديل على كود بحث فى database xebrahimx 4 451 31-07-14, 04:18 AM
آخر رد: xebrahimx

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم