Tom: MySQL: Autoimcrement ohne Key?

Beitrag lesen

Hello,

Was passiert wenn während eines locks ein zweiter Zugriff stattfindet, "wartet" der dann oder entsteht dann ein Fehler?

Gute Frage.

Beim Table-Lock sollte der eigentlich solange warten, bis alle angeforderten Locks verfügbar sind. Man muss ja alle auf einmal anmelden.

Bei den "Record-Lock"-Funktionen get_lock() bekommt man eine entsprechenden Rückgabewert und kann dann selber entscheiden, was man will. Die sind auch nur advisory und helfen daher nur, wenn alle Datenbanknutezr (Scripte) sich auch kooperativ verhalten und den Mechanismus benutzen.

Da wäre es dann wieder zweckmäßig, den Zugriff auf die Datenbank ausschließlich über Stored Procedures vorzunehmen, da man dann darin das kooperative Locking konsequent berücksichtigen kann und alle anderen Zugriffsarten einfach unterbinden kann.

Damit wäre das Model dann abgesichert gegen Fehlbedienung.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de