Bonjour,
Je voudrais restorer une base mais pour cela il faut=20
qu'avant je puisse killer les processes utilisateur en=20
cours.
Pour avoir la liste des processes je fais un select la=20
table master.dbo.sysprocesses mais il me retourne tous=20
les processes en cours du serveur.
Je voudrais comment avoir seulement les processes relatif=20
=E0 la base que je veux restorer.
Ou sinon si il existe une autre m=E9thode merci de me tenir=20
au courant.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
bruno reiter [MVP]
un exemple qui peut t'aider :
/* fonction pour voir le nombre d'utilisateurs connectés à une DB */ CREATE FUNCTION dbo.UDF_USER_ON_DB (@dbname sysname) RETURNS int AS BEGIN
DECLARE @nbuser int
SELECT @nbuser=count(*) FROM MASTER..SYSPROCESSES a JOIN MASTER..SYSDATABASES b ON a.dbid = b.dbid WHERE b.name = @dbname
RETURN @nbuser
END GO
SELECT dbo.UDF_USER_ON_DB ('northwind') GO
/* fonction pour voir le nombre de connexions par utilisateurs connectés à une DB */ CREATE FUNCTION dbo.UDF_CNX_USER_ON_DB (@dbname sysname) RETURNS TABLE AS RETURN SELECT 'login name'=a.loginame, 'nb connexions'=count(*) FROM MASTER..SYSPROCESSES a JOIN MASTER..SYSDATABASES b ON a.dbid = b.dbid WHERE b.name = @dbname GROUP BY a.loginame
GO
SELECT * FROM [Northwind].[dbo].[UDF_CNX_USER_ON_DB] ('northwind') GO
/* DROP FUNCTION dbo.UDF_USER_ON_DB
DROP FUNCTION dbo.UDF_CNX_USER_ON_DB */
br
"Stephh" wrote in message news:39a501c3406b$c438f010$ Bonjour, Je voudrais restorer une base mais pour cela il faut qu'avant je puisse killer les processes utilisateur en cours. Pour avoir la liste des processes je fais un select la table master.dbo.sysprocesses mais il me retourne tous les processes en cours du serveur.
Je voudrais comment avoir seulement les processes relatif à la base que je veux restorer. Ou sinon si il existe une autre méthode merci de me tenir au courant.
Merci beaucoup, Stéphane.
un exemple qui peut t'aider :
/*
fonction pour voir le nombre d'utilisateurs connectés à une DB
*/
CREATE FUNCTION dbo.UDF_USER_ON_DB
(@dbname sysname)
RETURNS int
AS
BEGIN
DECLARE @nbuser int
SELECT @nbuser=count(*) FROM MASTER..SYSPROCESSES a
JOIN MASTER..SYSDATABASES b
ON a.dbid = b.dbid
WHERE b.name = @dbname
RETURN @nbuser
END
GO
SELECT dbo.UDF_USER_ON_DB ('northwind')
GO
/*
fonction pour voir le nombre de connexions
par utilisateurs connectés à une DB
*/
CREATE FUNCTION dbo.UDF_CNX_USER_ON_DB
(@dbname sysname)
RETURNS TABLE
AS
RETURN
SELECT 'login name'=a.loginame, 'nb connexions'=count(*) FROM
MASTER..SYSPROCESSES a
JOIN MASTER..SYSDATABASES b
ON a.dbid = b.dbid
WHERE b.name = @dbname
GROUP BY a.loginame
GO
SELECT * FROM [Northwind].[dbo].[UDF_CNX_USER_ON_DB] ('northwind')
GO
/*
DROP FUNCTION dbo.UDF_USER_ON_DB
DROP FUNCTION dbo.UDF_CNX_USER_ON_DB
*/
br
"Stephh" <e@e.e> wrote in message news:39a501c3406b$c438f010$a601280a@phx.gbl...
Bonjour,
Je voudrais restorer une base mais pour cela il faut
qu'avant je puisse killer les processes utilisateur en
cours.
Pour avoir la liste des processes je fais un select la
table master.dbo.sysprocesses mais il me retourne tous
les processes en cours du serveur.
Je voudrais comment avoir seulement les processes relatif
à la base que je veux restorer.
Ou sinon si il existe une autre méthode merci de me tenir
au courant.
/* fonction pour voir le nombre d'utilisateurs connectés à une DB */ CREATE FUNCTION dbo.UDF_USER_ON_DB (@dbname sysname) RETURNS int AS BEGIN
DECLARE @nbuser int
SELECT @nbuser=count(*) FROM MASTER..SYSPROCESSES a JOIN MASTER..SYSDATABASES b ON a.dbid = b.dbid WHERE b.name = @dbname
RETURN @nbuser
END GO
SELECT dbo.UDF_USER_ON_DB ('northwind') GO
/* fonction pour voir le nombre de connexions par utilisateurs connectés à une DB */ CREATE FUNCTION dbo.UDF_CNX_USER_ON_DB (@dbname sysname) RETURNS TABLE AS RETURN SELECT 'login name'=a.loginame, 'nb connexions'=count(*) FROM MASTER..SYSPROCESSES a JOIN MASTER..SYSDATABASES b ON a.dbid = b.dbid WHERE b.name = @dbname GROUP BY a.loginame
GO
SELECT * FROM [Northwind].[dbo].[UDF_CNX_USER_ON_DB] ('northwind') GO
/* DROP FUNCTION dbo.UDF_USER_ON_DB
DROP FUNCTION dbo.UDF_CNX_USER_ON_DB */
br
"Stephh" wrote in message news:39a501c3406b$c438f010$ Bonjour, Je voudrais restorer une base mais pour cela il faut qu'avant je puisse killer les processes utilisateur en cours. Pour avoir la liste des processes je fais un select la table master.dbo.sysprocesses mais il me retourne tous les processes en cours du serveur.
Je voudrais comment avoir seulement les processes relatif à la base que je veux restorer. Ou sinon si il existe une autre méthode merci de me tenir au courant.