تحسين النسخ الاحتياطي ASP لقاعدة بيانات SQL Server
الكاتب:Eve Cole
وقت التحديث:2009-06-24 17:02:32
<form Method="post" name="myform" action="?action=backupdatabase">
حدد الإجراء: <INPUT TYPE="radio" NAME="act" id="act_backup"value="backup"><label for=act_backup>النسخ الاحتياطي</label>
<INPUT TYPE="radio" NAME="act" id="act_restore" value="restore"><label for=act_restore>استعادة</label>
<br>اسم قاعدة البيانات: <INPUT TYPE="text" NAME="databasename" value="<%=request("databasename")%>">
<br>مسار الملف: <INPUT TYPE="text" NAME="bak_file" value="c:$1.bak">(مسار ملف النسخ الاحتياطي أو الاسترداد)<br>
<نوع الإدخال = "إرسال" القيمة = "موافق" معرف = إرسال 1 اسم = إرسال 1>
</النموذج>
<%
'النسخ الاحتياطي والاسترداد لقاعدة بيانات SQL Server!
إذا طلب ("الإجراء") = "قاعدة البيانات الاحتياطية" ثم
خافت sqlserver،sqlname،sqlpassword،sqlLoginTimeout،اسم قاعدة البيانات،bak_file،act
sqlserver = "المضيف المحلي"
اسم SQL = "سا"
sqlpassword = "كلمة المرور"
سكللوجينتيميوت = 15
اسم قاعدة البيانات = تقليم (طلب ("اسم قاعدة البيانات"))
bak_file = تقليم(طلب("bak_file"))
bak_file = استبدال (bak_file،"$1"، اسم قاعدة البيانات)
الفعل = lcase(طلب("الفعل"))
إذا اسم قاعدة البيانات = "" ثم
استجابة.كتابة "اسم قاعدة بيانات الإدخال"
آخر
إذا الفعل = "النسخ الاحتياطي" ثم
تعيين srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect sqlserver، sqlname، sqlpassword
تعيين باك = Server.CreateObject("SQLDMO.Backup")
bak.Database=databasename
bak.Devices=Files
باك. العمل = 0
باك. تهيئة = 1
'bak.Replace = صحيح
bak.Files=bak_file
bak.SQLBackup srv
إذا err.number>0 ثم
Response.write err.number&"<font color=red><br>"
الاستجابة.كتابة خطأ.الوصف&"</font>"
نهاية إذا
Response.write "<font color=green>تم النسخ الاحتياطي بنجاح!</font>"
elseif act = "استعادة" إذن
'يجب إجراء الاستعادة عندما لا تكون قاعدة البيانات قيد الاستخدام!
تعيين srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect sqlserver، sqlname، sqlpassword
تعيين الراحة=Server.CreateObject("SQLDMO.Restore")
Rest.Action=0 'استعادة قاعدة البيانات الكاملة
Rest.Database=databasename
Rest.Devices=Files
Rest.Files=bak_file
Rest.ReplaceDatabase=True 'فرض الاستعادة على قاعدة البيانات الموجودة
إذا err.number>0 ثم
Response.write err.number&"<font color=red><br>"
الاستجابة.كتابة خطأ.الوصف&"</font>"
نهاية إذا
Rest.SQLRestore srv
Response.write "<font color=green>تمت الاستعادة بنجاح!</font>"
آخر
Response.write "<font color=red>لم يتم تحديد أي عملية</font>"
نهاية إذا
نهاية إذا
نهاية إذا
%>