Autor Beitrag
flyhigh83
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 67

Win 7
C# (VS2010)
BeitragVerfasst: Di 16.11.10 15:20 
Hi,

ich bin gerade am versuch die Transactionen sauber zu gestalten und jenach aufgerufenen Datensatz ein LOCK IN SHARE MODE zu setzten.

Meine Vorraussetzungen dafür sind eine MYSQL InnoDB Datenbank. (MySam unterstützt meines wissen nach nur LOCK TABLE)
Visual Studio 2010 und über den MySQL Connector eine Datenbankverbindung hergestellt.

Zu meinem Problem oder Frage.
Wie kann ich am besten den aufgerufenen Datensatz schützen. Also wo muss ich den Code
ausblenden C#-Quelltext
1:
START TRANSACTION;					

ausblenden C#-Quelltext
1:
SELECT ... LOCK IN SHARE MODE;					


einfügen.

Bei meiner bisherrigen Recherche bin ich noch auf einige Seiten gestoßen, welche mir aber bisher nicht weiterhelfen konnten.

msdn.microsoft.com/d...ibrary/ms978457.aspx
msdn.microsoft.com/e...ibrary/5ha4240h.aspx
msdn.microsoft.com/d...2146%28VS.90%29.aspx

Ach so eines noch vorab.

Wenn ich aus PHPmyAdmin oder sonst wo die Transaction durchführe funktioniert dies sauber.

hier das Beispiel (dev.mysql.com/doc/re...odb-lock-modes.html)

Ach so ich vermute mal das ich das in dem DataSet Designer irgendwo einbauen muss (DataSet.Designer.cs)?

Dort stehen ja die einzelnen SQL Anweisungen über select etc. Meine vermutung ist aber das es nicht so einfach geht, da die Selects alle jeweils ohne "WHERE" Klausel auskommen. Somit würde ich ja nicht den einzelnen Datensatz der Datenbank zurückmelden zum Sperren sondern dann auch wieder die komplette Tabelle

Kann mir jemand irgend welche Ansätze oder Tutorials sagen.?

Danke
stendate
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19
Erhaltene Danke: 1



BeitragVerfasst: Do 23.12.10 00:35 
Darum würde ich mich nicht selber kümmern, dafür sind ja die Datenbank-Provider da. Unter [1] gibt es bei "Example 17-17" ein schönes Beispiel.

[1] book.opensourceproje...p-chp-17-sect-1.html