2010-05-06 49 views

Respuesta

13

es necesario utilizar: sqlcmd Utility

La utilidad sqlcmd permite introducir instrucciones de Transact-SQL, sistema procedimientos y archivos de comandos en el símbolo del de comandos, en el Editor de consultas en SQLCMD modo, en un archivo de script de Windows o en un sistema operativo (Cmd.exe) paso de trabajo de un trabajo del Agente de SQL Server. Esta utilidad utiliza OLE DB para ejecutar lotes de Transact-SQL .

A continuación, utilice CREATE DATABASE (Transact-SQL) hacer el pegado y sp_detach_db (Transact-SQL) hacer de soltar. El sp_attach_db (Transact-SQL) se eliminará en una versión futura de Microsoft SQL Server.

+0

muy agradable. Trabajado como un encanto. Tuvo que habilitar 'named pipes' para ejecutar SqlCmd, no sé por qué, pero aparte de eso: ¡chapeau! – Michel

+0

@KM. ¿Me puede dar un ejemplo ... – Anjali

+4

Tengo un archivo por lotes con este contenido: 'sqlcmd -Usa -PPASSWORD -i" N: \ SqlServer \ attachexample_database.sql "' y el contenido del attachexample_database.sql es 'Crear base de datos example_database ON (FILENAME = 'C: \ archivos de programa \ Microsoft SQL Server \ MSSQL10_50.MSSQLSERVER \ MSSQL \ DATA \ example_database.mdf') FOR ATTACH; IR GO' – Michel

0

Si es necesario especificar el nombre del archivo de registro: USE master; GO; CREATE DATABASE DBNAME ON ( FILENAME = 'C:\DBFILE.mdf') LOG ON ( FILENAME = 'C:\DBLOGFILE_log.ldf') FOR ATTACH; GO; Y para separar: USE master; GO; EXEC sp_detach_db 'DBNAME', 'true'; GO;

Cuestiones relacionadas