none
Wieviele Benutzer sind auf der Datenbank angemeldet? RRS feed

  • Frage

  • Hallo,
    ich habe eine SQL Server Datenbank (muss ab SQL Server 7 bis SQL Server 2008 funtionieren)
    Dann habe ich ein VB.Net Programm, welches sich per Windows Authentifizierung an der Datenbank anmeldet.
    Nun will ich herausfinden, wieviele Leute aktuell an der Datenbank angemeldet sind.
    Geht das?
    Wenn ja, wie?


    Mit SQL Server Authentifizierung kein Problem!
    exec sp_who 'Benutzer'


    Bin für jede Info dankbar.
    Gruß
    Thomas
    Donnerstag, 12. August 2010 13:41

Antworten

  • Hallo Thomas,

    es spielt keine Rolle, ob SQL Server oder Windows Authentifizierung benutzt wird. Stel dir sicher, ob das Konto mit Windows Authentifizierung die VIEW SERVER STATE-Berechtigung auf dem Server bekommen hat.


    Gruß Yury
    Donnerstag, 12. August 2010 16:18
  • Hallo Thomas,

    wenn es nur um die Anzahl und die Abwärtskompatibilität geht, kannst Du unten aufgeführte Abfrage verwenden (ich würde Dir jedoch empfehlen, die Abfrage in Deiner Datenbank in eine View zu verpacken:

    Ich verwende DBO.sysprocesses anstatt sys.sysprocesses, da Du die Abwärtskompatiblität benötigst.

    SELECT COUNT(r.SId) AS LoggedIn
    FROM (
       SELECT DISTINCT sid
       FROM master.dbo.sysprocesses
       )r

    Uwe Ricken
    Microsoft Certified Database Administrator SQL Server 2005
    db Berater GmbH
    http://www.db-berater.de
    Freitag, 13. August 2010 07:00

Alle Antworten

  • Hallo Thomas,

    Schau Dir die folgende Diskussion an. Vielleicht findest Du etwas dass Dir weiter helfen kann.

    how find list of all user in sql database

    Grüße,

    Robert

    Donnerstag, 12. August 2010 15:04
    Moderator
  • Hallo Thomas,

    es spielt keine Rolle, ob SQL Server oder Windows Authentifizierung benutzt wird. Stel dir sicher, ob das Konto mit Windows Authentifizierung die VIEW SERVER STATE-Berechtigung auf dem Server bekommen hat.


    Gruß Yury
    Donnerstag, 12. August 2010 16:18
  • Hallo Thomas,

    wenn es nur um die Anzahl und die Abwärtskompatibilität geht, kannst Du unten aufgeführte Abfrage verwenden (ich würde Dir jedoch empfehlen, die Abfrage in Deiner Datenbank in eine View zu verpacken:

    Ich verwende DBO.sysprocesses anstatt sys.sysprocesses, da Du die Abwärtskompatiblität benötigst.

    SELECT COUNT(r.SId) AS LoggedIn
    FROM (
       SELECT DISTINCT sid
       FROM master.dbo.sysprocesses
       )r

    Uwe Ricken
    Microsoft Certified Database Administrator SQL Server 2005
    db Berater GmbH
    http://www.db-berater.de
    Freitag, 13. August 2010 07:00