Voici un petit bacth, écrit par ETIENNE ZINZINDOHOUE alias ZINZINETI pour simuler l’activité de plusieurs utilisateur lançant le même fichier de commandes SQL sur le serveur.
<pre>DECLARE @CMD NVARCHAR(4000) -- Commande Shell à exécuter
, @SERVER VARCHAR(255) -- Nom de l'instance
, @LOGIN VARCHAR(255) -- Utilisateur
, @PWD VARCHAR(255) -- Mot de pase
, @NbExecutions INT -- Nombre de fois où la requête est exécutée
, @FICHIERSQL NVARCHAR(255) -- Nom du fichier contenant la requête à exécuter
, @FICHIERSORTIE NVARCHAR(255) -- Nom des fichiers de sortie
BEGIN
SET @SERVER = 'monInstance'
SET @LOGIN ='monLogin'
SET @PWD = 'monPwd'
SET @NbExecutions = 2
SET @FICHIERSQL = 'E:\Test_Charge\fichierSQL.sql'
SET @FICHIERSORTIE = 'E:\Test_Charge\Sortie\Log%i.txt'
SET @CMD = 'For /L %i in (1,1,'
+ CONVERT(VARCHAR,@NbExecutions) + ') do start sqlcmd -S "'
+ ISNULL(@SERVER,'') + '" -U "'
+ ISNULL(@LOGIN,'')+'" -P "'
+ ISNULL(@PWD,'')+'" -i "'
+ ISNULL(@FICHIERSQL,'')+'" -o "'
+ ISNULL(@FICHIERSORTIE,'')+'"'
EXEC master..xp_cmdshell @CMD
END</pre>
, @SERVER VARCHAR(255) -- Nom de l'instance
, @LOGIN VARCHAR(255) -- Utilisateur
, @PWD VARCHAR(255) -- Mot de pase
, @NbExecutions INT -- Nombre de fois où la requête est exécutée
, @FICHIERSQL NVARCHAR(255) -- Nom du fichier contenant la requête à exécuter
, @FICHIERSORTIE NVARCHAR(255) -- Nom des fichiers de sortie
BEGIN
SET @SERVER = 'monInstance'
SET @LOGIN ='monLogin'
SET @PWD = 'monPwd'
SET @NbExecutions = 2
SET @FICHIERSQL = 'E:\Test_Charge\fichierSQL.sql'
SET @FICHIERSORTIE = 'E:\Test_Charge\Sortie\Log%i.txt'
SET @CMD = 'For /L %i in (1,1,'
+ CONVERT(VARCHAR,@NbExecutions) + ') do start sqlcmd -S "'
+ ISNULL(@SERVER,'') + '" -U "'
+ ISNULL(@LOGIN,'')+'" -P "'
+ ISNULL(@PWD,'')+'" -i "'
+ ISNULL(@FICHIERSQL,'')+'" -o "'
+ ISNULL(@FICHIERSORTIE,'')+'"'
EXEC master..xp_cmdshell @CMD
END</pre>
————–
Frédéric BROUARD, Spécialiste modélisation, bases de données, optimisation, langage SQL.
Le site sur le langage SQL et les S.G.B.D. relationnels : http://sqlpro.developpez.com/
Expert SQL Server http://www.sqlspot.com : audit, optimisation, tuning, formation
* * * * * Enseignant au CNAM PACA et à l’ISEN à Toulon * * * * *