Esto sería algo aproximado a lo que buscas, pero con una base de datos access, y sin pasar del formato de BD a txt, sino que se hace una copia de una BD access llamada "mibase.mdb" y se genera una nueva copia con el nombre "mibase_backup" (mibase.mdb estaría en el mismo directorio que el fichero backup.asp):
Si no me he equivocado, sería algo así:
backup.asp:
Código:
<%
On Error Resume Next
'Hacemos una copia de nuestra BD
base_de_datos=Server.MapPath("mibase.mdb")
base_de_datos_backup=Server.MapPath("mibase_backup.mdb")
set fso=server.createObject("scripting.FileSystemObject")
if fso.FileExists(base_de_datos) then
'Usamos CopyFile, con true, que indica que va a sobreescribir el backup (en el caso de existir)
fso.CopyFile base_de_datos, base_de_datos_backup, true
'miramos si ha habido o no, errores
if Err=0 then
Response.write "Copia realizada correctamente."
else
Response.write "Se han producido errores durante el proceso.<br><br>"
Response.write "Error: " & Err & "<br>"
Response.write "Descripción del error: " & Err.description
end if
else
Response.write "La base de datos no existe."
end if
'limpiamos el objeto
set fso=nothing
%>
Si te sale en el error "Permiso denegado", debes darle permisos a la carpeta.
Edito: Me había dejado de indicar la ruta donde debe copiarse la BD de respaldo:
Server.MapPath("mibase_backup.mdb")
Salu2