Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment connaitre le nombre d'utilisateurs connectés ?

7 réponses
Avatar
CC
Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
connectés à une base de données (ou à SQL le cas échéant) ?

Merci

7 réponses

Avatar
bruno reiter [MVP]
pas directement, mais avec ça :

/*
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

"CC" wrote in message
news:
Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
connectés à une base de données (ou à SQL le cas échéant) ?

Merci




Avatar
Fred BROUARD
Salut,

Bruno, pense à mettre tes noms de table systèmes en minuscules sinon cela ne
passe pas lorsque le serveur est installé en collation forte (CS, BIN...)

A +

bruno reiter [MVP] a écrit:
pas directement, mais avec ça :

/*
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

"CC" wrote in message
news:

Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
connectés à une base de données (ou à SQL le cas échéant) ?

Merci










--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Avatar
CC
Merci pour l'info, j'essayes ça tout de suite.


"bruno reiter [MVP]" <remove.this! a écrit dans le message
de news:
pas directement, mais avec ça :

/*
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

"CC" wrote in message
news:
Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
connectés à une base de données (ou à SQL le cas échéant) ?

Merci








Avatar
Oliv'
Il y a aussi
sp_who ou sp_who2
Oliv'

"CC" a écrit dans le message de news:

Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
connectés à une base de données (ou à SQL le cas échéant) ?

Merci
Avatar
TedIF
Bonjour,

Et dans le même genre peut on connaître le nombre d'utilisateur ayant une
requête active sur une certaine table d'une base de donnée ?

Merci d'avance

"bruno reiter [MVP]" <remove.this! a écrit dans le message
de news:
pas directement, mais avec ça :

/*
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

"CC" wrote in message
news:
> Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
> connectés à une base de données (ou à SQL le cas échéant) ?
>
> Merci
>
>




Avatar
bruno reiter [MVP]
en utilisant la colonne status de la sysprocesses
ou
en mettant le résultat de sp_who2 active
dans une table temporaire et en filtrant

br

"TedIF" wrote in message
news:e#
Bonjour,

Et dans le même genre peut on connaître le nombre d'utilisateur ayant une
requête active sur une certaine table d'une base de donnée ?

Merci d'avance

"bruno reiter [MVP]" <remove.this! a écrit dans le


message
de news:
> pas directement, mais avec ça :
>
> /*
> 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
>
> "CC" wrote in message
> news:
> > Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
> > connectés à une base de données (ou à SQL le cas échéant) ?
> >
> > Merci
> >
> >
>
>




Avatar
TedIF
Merci bien.

"bruno reiter [MVP]" <remove.this! a écrit dans le message
de news:
en utilisant la colonne status de la sysprocesses
ou
en mettant le résultat de sp_who2 active
dans une table temporaire et en filtrant

br

"TedIF" wrote in message
news:e#
> Bonjour,
>
> Et dans le même genre peut on connaître le nombre d'utilisateur ayant


une
> requête active sur une certaine table d'une base de donnée ?
>
> Merci d'avance
>
> "bruno reiter [MVP]" <remove.this! a écrit dans le
message
> de news:
> > pas directement, mais avec ça :
> >
> > /*
> > 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
> >
> > "CC" wrote in message
> > news:
> > > Y-a-t-il une requete qui permet de connaitre le nombre d'utilisateur
> > > connectés à une base de données (ou à SQL le cas échéant) ?
> > >
> > > Merci
> > >
> > >
> >
> >
>
>