Bonjour,
Je souhaiterais détacher des bases de données en commande osql sous commande DOS, et de l'automatiser.
Mais il ne faut pas que je détache certaines bases tel que :
- master
- tempdb
- model
- msdb
- pubs
Alors voici sur quoi je me base :
J'ai une première requete avec laquelle je récupère les bases que je souhaite :
Et voici l'outils qui sert à détacher des bases :
Code : Sélectionner tout - Visualiser dans une fenêtre à part select name from sysdatabases where name not in ('master','tempdb','model','msdb','pubs')
Ma question est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 osql -U sa -P -Q "sp_detach_db @dbname="DATABASE"
Comment je pourrais faire pour que les données extraites dans ma requete puissent être traitées dans le sp_detachdb ?
Du style :
Mais le hic c'est que celle-ci ne fonctionne pas, et j'aimerais vraiment faire un batch pour que ce soit traité tous les dimanches.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2osql -U sa -P -Q "sp_detach_db @dbname=`select name from sysdatabases where name not in ('master','tempdb','model','msdb','pubs')`"
Pourquoi, parce que je bosse dans une entreprise qui édite des logiciels et que tous le monde monte des bases, mais ne les démontent pas. Après ils se plaigne que c'est trop long, donc ma solution c'est de détacher les bases des utilisateurs non soigneux.
Peace ...
Partager