Resulta que tengo un script que yo mismo escribi ayudado de un par de links en sn google
aca les dejo el codigo
-------------------------------------------------------------------------------------
Código:
------------------------------------------------------------------------ declare @db_nom nvarchar(100), --NOMBRE DE LA BASE DE DATOS @ruta nvarchar(100), --RUTA A ARCHIVO .BAK @nom_data nvarchar(128), --NOMBRE DE ARCHIVO LOGICO DATA @nom_log nvarchar(128) --NOMBRE DE ARCHIVO LOGICO LOG set @db_nom="mi_base" set @ruta = "rutaackups" +@db_nom+ "BACKUP.bak" --CREACION TABLA TEMPORAL QUE GUARDA RESULTADOS DE FILELISTONLY create table #tableFileList (LogicalName nvarchar(128), PhysicalName nvarchar(260), Type char(1), FileGroupName nvarchar(128), Size numeric(20,0), MaxSize numeric(20,0)) --LLENADO DE #tableFileList insert into #tableFileList Exec("Restore Filelistonly From Disk="+ """" + @ruta + """") select @nom_data=(select logicalname from #tableFileList where type="D") select @nom_log=(select logicalname from #tableFileList where type="L") --RESTAURAR LA BASE DE DATOS exec("Restore database "+ @db_nom +" from disk=""" + @ruta + """ WITH MOVE """ + @nom_data + """ TO ""G:Program FilesMicrosoft SQL ServerMSS_intanciaData" + @nom_data + ".mdf"", MOVE """+ @nom_log +""" TO ""G:Program FilesMicrosoft SQL ServerMSS_intanciaData" + @nom_data + ".LDF"", REPLACE GO ") --CAMBIAR NOMBRES ARCHIVOS LOGICOS POR LOS CORRECTOS exec("ALTER DATABASE " + @db_nom + " MODIFY FILE( NAME = """ + @nom_log + """, NEWNAME =""" + @db_nom + "_log""") exec("ALTER DATABASE " + @db_nom + " MODIFY FILE( NAME = """ + @nom_data + """, NEWNAME =""" + @db_nom + "_data""") drop table #tableFileList
Como ven el codigo es para la restauracion de bases de datos, este restaura el archivo backup.bak que se encuentra dentro de la carpeta con el nombre de la base de datos que le corrsponde.
Para una base de datos con nombre "mi_base" (@db_nom="mi_base") el codigo anterior me arroja el sgte error:
Código:
no entiendo esos errores, ojala alguien me pueda ayudar Server: Msg 170, Level 15, State 1, Line 8 Line 8: Incorrect syntax near "GO". Server: Msg 170, Level 15, State 1, Line 4 Line 4: Incorrect syntax near "mi_base_log". Server: Msg 170, Level 15, State 1, Line 4 Line 4: Incorrect syntax near "mi_base_data".
saludos