phpbar.de logo

Mailinglisten-Archive

Datenbankdesign? OT?

Datenbankdesign? OT?

Michael Bergbauer mysql_(at)_lists.phpcenter.de
Thu, 19 Jul 2001 13:53:36 +0200 (CEST)


On 19-Jul-2001 Ulrich Scheuermann wrote:
>> Hmm, nachdem es in MySQL keine StoredQueries/Views/oä gibt würd ich fast
> sagen,
>> an der ganzen Misere ist Access schuld. Auch das "Select TOP 100" ist in
> MySQL
>> nicht möglich. Die ganze DB-Operation wird also von Access und nicht
> MySQL
>> gemacht, du solltest daher auch bei der Access-Liste besser aufgehoben
> sein.
> 
> Stimmt glaube ich nicht ganz;
> meines Wissens macht der MyODBC-Treiber aus TOP 100 ein Limit 100.
> Eine Access-Liste wird mir dazu weniger helfen können.

Keine Ahnung, ich arbeitete weder mit MyODBC noch kann ich in der Access-Doku
nachsehen, da es das Teil bei mir einfach nicht gibt. 

>> zu serialiseren, oder du machst die UPDATE-Abfrage vor der
> Select-Abfrage, dann
>> solltest du sichergehen können, das die Leute verschiedene Datensätze
> bekommen.
>>
> 
> Wieso UPDATE vor SELECT?
> Die UPDATE-query verwendet doch die SELECT-query (mit Limit 100).
> Sonst hätte ich das direkt mit einer subquery gemacht - aber die gibt es
> in MySQL nicht.
> Verstehe nicht ganz was Du meinst.

Ganz einfach: Wenn du den Update vor dem Select machst, dann markierst du die
Datensätze als in Bearbeitung _bevor_ du diese Datensätze genauer kennst. Es
spielt ja auch keine Rolle, ob du vor dieser Kennzeichnung weiss, welche
Datensätze du markierst oder nicht, solange es nur ne bestimmte Anzahl ist, und
solange sie noch nicht markiert sind, oder? Danach machst du dann den Select
und holst die Datensätze raus, die du gerade markiert hast. So sollte 
meiner Meinung nach sichergestellt sein, das jeder Datensatz nur
einmal als belegt markiert wird.  

Nichtsdestotrotz verweise ich auch nochmals auf die Methode mit dem Locks, die
das auf jeden Fall sicherstellt, und die hier schon mehrfach angesprochen
wurde. 


Michael

-- 
Michael Bergbauer <michael_(at)_noname.franke.de>
Use your idle CPU cycles.
See http://www.distributed.net and win $ 1 000.
Visit our mud Geas at geas.franken.de Port 3333

---
!!NEU!!
Fragen und Antworten zu MySQL und dieser Liste unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive