Bonjour à tous,

Je me retrouve avec un dossier qui contient 1500 scripts, je dois les exécuter sur une Bdd pour tester le bon fonctionnement des scripts.

Je pense qu'il est possible d'automatiser la chose en PowerShell, par contre je n'ai jamais mis la main dans ce type de script.

Sauriez vous me donner quelques exemples ou des liens qui implémentent ce genre de fonctionnalité ?

Merci par avance pour votre aide

A première vue, il existe la commande Invoke-Sqlcmd qui gère la fonctionnalité, maintenant il ne reste plus qu'a incrémenter la boucle pour chaque script

------------------------------------------------------------------------------------
Résolution, ça peut servir à d'autres

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
add-pssnapin sqlserverprovidersnapin100
add-pssnapin sqlservercmdletsnapin100
try
{
    foreach ($f in Get-ChildItem -path "D:\Userfiles\Bob\Desktop\Script" -Filter *.sql )
    {
        $out = "D:\Userfiles\Bob\Desktop\Script\log\" + $f.name.split(".")[0] + ".txt" ;
        invoke-sqlcmd -ServerInstance PRODSERVER -Database Base1 -InputFile $f.fullname | out-file -filePath $out
    }
 
}
catch
{
    write-host $_.Exception.Message
}
Attention l’exécution se fait par ordre a alphabétique !!

add-pssnapin sqlserverprovidersnapin100
add-pssnapin sqlservercmdletsnapin100

Pour les utilisateurs de SQLServer 2008