Sauvegarde ASP améliorée de la base de données SQL Server
Auteur:Eve Cole
Date de mise à jour:2009-06-24 17:02:32
<form method="post" name="myform" action="?action=backupdatabase">
Sélectionnez l'action : <INPUT TYPE="radio" NAME="act" id="act_backup"value="backup"><label for=act_backup>Sauvegarde</label>
<INPUT TYPE="radio" NAME="act" id="act_restore" value="restore"><label for=act_restore>Restaurer</label>
<br>Nom de la base de données : <INPUT TYPE="text" NAME="databasename" value="<%=request("databasename")%>">
<br>Chemin du fichier : <INPUT TYPE="text" NAME="bak_file" value="c:$1.bak">(chemin du fichier de sauvegarde ou de récupération)<br>
<input type="submit" value="OK" id=submit1 name=submit1>
</form>
<%
'Sauvegarde et récupération de la base de données SQL Server !
if request("action")="backupdatabase" Alors
faible sqlserver,sqlname,sqlpassword,sqlLoginTimeout,databasename,bak_file,act
sqlserver = "hôte local"
nomsql = "sa"
sqlpassword="mot de passe"
sqlLoginTimeout = 15
nom de la base de données = trim(request("nom de la base de données"))
bak_file = trim(request("bak_file"))
bak_file = remplacer(bak_file,"$1",nom de la base de données)
acte = lcase(requête("acte"))
si nom de base de données = "" alors
réponse.write "nom de la base de données d'entrée"
autre
si act = "sauvegarde" alors
Définir srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect serveur sql, nom sql, mot de passe sql
Définir bak = Server.CreateObject("SQLDMO.Backup")
bak.Database=nom de la base de données
bak.Devices=Fichiers
bak.Action = 0
bak.Initialize = 1
'bak.Replace = Vrai
bak.Files=bak_file
bak.SQLBackup srv
si numéro d'erreur>0 alors
réponse.write err.number&"<font color=red><br>"
réponse.écrire err.description&"</font>"
finir si
Response.write "<font color=green>Sauvegarde réussie !</font>"
elseif act="restaurer" alors
'La restauration doit être effectuée lorsque la base de données n'est pas utilisée !
Définir srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect serveur sql, nom sql, mot de passe sql
Définir rest=Server.CreateObject("SQLDMO.Restore")
rest.Action=0 'restauration complète de la base de données
rest.Database=nom de la base de données
rest.Devices=Fichiers
rest.Files=bak_file
rest.ReplaceDatabase=True 'Forcer la restauration sur la base de données existante
si numéro d'erreur>0 alors
réponse.write err.number&"<font color=red><br>"
réponse.écrire err.description&"</font>"
finir si
rest.SQLRestore srv
Response.write "<font color=green>Restauré avec succès !</font>"
autre
Response.write "<font color=red>Aucune opération sélectionnée</font>"
finir si
finir si
finir si
%>