Locking

01/08/2008 - 15:51 von Marvin Niemann | Report spam
Hallo,

ich würde gern mit einer Datenbank (MSSQL Server 2005 Express) folgendes
per SQL (via ASP.NET) veranstalten:

- Explizites Sperren einer gesamten DB; soll heißen: der Auslöser der
Sperre hat dann in seiner aktuellen Session Exklusivzugriff (Lesen und
Schreiben)
- Abfrage, ob eine DB derart gesperrt ist (vielleicht per Fehlschlag des
Login oder eines beliebigen SELECT mit passender Fehlermeldung?)
- Wiederaufheben der Sperre (explizit durch ihren Auslöser; bzw. wenn
der sich abmeldet oder in seiner Session nichts mehr tut, nach Ablauf
von Zeitspanne x automatisch)

Das ganze SET TRANSACTION ISOLATION LEVEL Zeug gilt anscheinend nur für
die Daten/Tabellen, auf die ich wàhrend der Transaktion gerade zugreife.

MN
 

Lesen sie die antworten

#1 Olaf Pietsch
01/08/2008 - 17:16 | Warnen spam
Hallo Marvin,

"Marvin Niemann" schrieb im Newsbeitrag
news:g6v4ds$lr5$
ich würde gern mit einer Datenbank (MSSQL Server 2005 Express) folgendes
per SQL (via ASP.NET) veranstalten:

- Explizites Sperren einer gesamten DB; soll heißen: der Auslöser der
Sperre hat dann in seiner aktuellen Session Exklusivzugriff (Lesen und
Schreiben)



Statement:
ALTER DATABASE ...
<db_user_access_option> :: { SINGLE_USER | RESTRICTED_USER | MULTI_USER }

<db_update_option> :: { READ_ONLY | READ_WRITE }
http://msdn.microsoft.com/en-us/lib...74269.aspx

- Abfrage, ob eine DB derart gesperrt ist (vielleicht per Fehlschlag des
Login oder eines beliebigen SELECT mit passender Fehlermeldung?)



user_access in sys.databases
http://msdn.microsoft.com/de-de/lib...78534.aspx

- Wiederaufheben der Sperre (explizit durch ihren Auslöser; bzw. wenn der
sich abmeldet oder in seiner Session nichts mehr tut, nach Ablauf von
Zeitspanne x automatisch)




ggf. auch Applikationsperre
sp_getapplock usw.
http://msdn.microsoft.com/en-us/lib...89823.aspx



Gruß Olaf
Ich unterstütze PASS Deutschland e.V. (http://www.sqlpass.de)
Blog (http://www.sqlpass.de/PASSUserBlogs...x?BlogID=3)
Regionalgruppe Köln/Bonn/Düsseldorf
(http://www.sqlpass.de/Regionalgrupp...fault.aspx)

Ähnliche fragen