Datenbank Exklusiv öffnen

Hallo,
ich will eine SQL Server Datenbank exklusiv öffnen(Mit ADO und VB6.0).
Bei Access Datenbanken geht es hervorragend mit dem Paramter „Mode“ des AOD.Connection Objektes.
Kann mir jemand sagen, ob es vieleicht irgendwie auch mit dem SQL Server geht?

Danke im voraus.
Gruß
Thomas

MSSQL ist eine multiuser-db, sollte also nicht möglich sein, diese exklusiv zu öffnen. kann mich auch täuschen.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

wie kann ich dann verhindern, dass wenn ich ein kritisches Datenbank Update durchführen will(per VB Code), niemand anders gerade etwas mit der Datenbank macht?

Gruß
Thomas

MSSQL ist eine multiuser-db, sollte also nicht möglich sein,
diese exklusiv zu öffnen. kann mich auch täuschen.

mit einer Transaktion.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,
Transaktionen sind schön und gut, ich kann aber nicht feststellen, ob schon eine Transaktion läuft.
Wenn ich also ein Update mit einer Transaktion mache, und ein zweiter User will eine Sekunde später diese Update machen, läut das Programm auch in diese Transaktion. Hier kann man nichts ändern, bis bei dem ersten Rechner die Transaktion abgeschlossen ist.

Ist bei dem ersten PC die Transaktion abgeschlossen, läuft auf dem zweiten PC diese Transaktion auch noch durch. Ich will aber, dass manche Updates wirklich nur ein einziges mal durchgeführt werden.(Problem bei sehr Zeitintensiven Datenbank Updates)

Gruß
Thomas

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Du könntest auch noch einen anderen Weg gehen: Ändere einfach temporär die Zugriffsrechte (write) der Logins auf die DB!?

/stefan

Hallo Stefan,
kannst du mir auch sagen, wie das geht(Denke immer daran, SQL Server)

Gruß
Thomas

Du könntest auch noch einen anderen Weg gehen: Ändere einfach
temporär die Zugriffsrechte (write) der Logins auf die DB!?

/stefan

Hi Thomas!

Dazu gibt’s in der „Master“ jedes SQL Server Stored Procedures wie sp_grantdbaccess und sp_revokedbaccess (geht auch mit sp_adrolemember u.ä.).

Es gibt aber, habe ich nachgelesen, Sperren für Transaktionen, die von unterschiedlicher Art sein können. So gibt es zB. die ISOLATION LEVELS, die ein Recordset ab dem Aufruf exklusiv sperren, und erst dann wieder freigegeben werden, wenn dies befohlen wird. Ich schicke Dir einen Auszug der MSDN im PDF-Format per Mail.

VG, Stefan.

LG, Stefan.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Dokumentation in MSDN
Hi Thomas!

Hier der Link zur MSDN-Site:

http://msdn.microsoft.com/library/default.asp?url=/l…

Links in der Baumstruktur befindet sich der Artikel unter Enterprise Development/.NET Enterprise Server/Microsoft SQL Server /Microsoft SQL Server 2000/SDK Doumentation/Accessing and Changing Relational Data/Locking bzs. /Cursors

Viel Spaß!

Hallo Stefan,
danke für deine Hilfe,
ich werde gleich alles durchprobieren, ob ich klar komme

Gruß
Thomas