Betina Andersen skrev:
> Det skulle jeg måske have skrevet i mit indlæg for ja jeg skal
> jo netop bruge værdien
så derfor ville jeg gøre det på den
> anden måde med låsetyperne sat på.
Hvilken database benytter du? Hvis databasen understøtter lagrede
procedurer, kan du lade den klare arbejdet (lav en procedure der
opdaterer tabellen og returnerer den nye værdi).
I to af de ofte anvendte databaser - Access og MySQL 4 - kan det
dog ikke lade sig gøre. Her kan du i stedet gøre noget a la:
strUpdate = "UPDATE tabel SET felt = felt + 1 WHERE id = " & id
strSelect = "SELECT felt FROM tabel WHERE id = " & id
Application.Lock
Conn.Execute (strUpdate)
Set rs = Conn.Execute (strSelect)
Application.Unlock
> Jeg tør ikke låse for at applikationen ikke må lave forespørgsler
> mens jeg laver dette nummer da der kan være mange brugere på.
Med ovenstående model bliver der kun låst i den tid det tager at
fyre to forespørgsler af sted. Jeg tror ikke det vil betyde
mærkbare forsinkelser for brugerne.
Man skal sørge for at låse i så kort tid som muligt - derfor skal
oprettelsen og nedlæggelsen af forbindelsen fx ligge uden for
låsen.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html