jueves, 25 de octubre de 2012

SqlServer Drop Database Dinamico



Si en determinado momento quieren realizar un drop de una base de datos, y hacen algo por el estilo a esto:
drop database @name 




van a obtener un error tipo:
Incorrect syntax near '@name'.




La forma correcta se resuelve con la siguiente sintaxis:
exec ('drop database ' + @name )





Si estan necesitando la ejecucion de esta sentencia, lo mas probable es que en algun momento quieran hacer un bucle que elimine todas las tablas (exceptuando las importantes, como Master, temp, etc)...

Si necesitan aprender como se hace un bucle, puede verse desde aqui:
http://onerrorgotohell.blogspot.com.ar/2012/10/sqlserver-for-each-sintaxis.html






Solo deberian ponerle dentro del bucle la sentencia explicada...

Saludos.





No hay comentarios:

Publicar un comentario