Avete qualche info e/o esempi su come evitare la scrittura simultanea sul solito record del db mysql da parte di più utenti?
Grazie
neorf
Avete qualche info e/o esempi su come evitare la scrittura simultanea sul solito record del db mysql da parte di più utenti?
Grazie
neorf
www.TriX.IT - Web Development
Le scritture "simultanee" sui db non possono avvenire praticamente mai, perche' l'accesso delle query avviene in modo seriale, una alla volta. Potrebbe succedere che qualcuno cambi le carte in tavola tra una interrogazione ed un update per esempio, questo si. Al proposito puoi leggere una, ormai datata, pillola di mchorney:Originariamente inviato da neorf
Avete qualche info e/o esempi su come evitare la scrittura simultanea sul solito record del db mysql da parte di più utenti?
Grazie
neorf
http://forum.html.it/forum/showthrea...hreadid=603762
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
ok grazie 1000, ma cercavo anche qualche info su come mostrare all'utente che i dati su cui sta accedendo sono attualmente bloccati, tipo se l'utente A modifica un testo, e poi ci prova anche l'utente B, vorrei far mostrare all'utente B un messaggio del tipo "tabella attualmente in uso da altro utente".
Ciao
neorf
www.TriX.IT - Web Development
Puoi fare il table locking
http://dev.mysql.com/doc/refman/5.1/...nsactions.html
www.sitemeer.com » Quando un sito pare irraggiungibile
Se ti piace ci puoi trovare anche su Facebook
ok, perfetto...
ma come posso mostrare al cliente B che la tabella è bloccata dal cliente A?
del tipo:
Insomma, con quale condizione o query al db posso vedere se la tabella è occupata?Codice PHP:
if(TABLE==locked) echo "Tabella DB occupata al momento";
else form();
ciao e grazie
neorf
www.TriX.IT - Web Development
per me conviene procedere con un algoritmo che prevede una tabella extra con struttura 'tabella in corso di modifica', 'utente che modifica'
E poi:
funzione query(query da eseguire, tabella di azione)
ricerca in tabella extra se [i]tabella he si vuole modifica è esistente;
se si -> eccezione e uscita
se no ->
inserisci in tabella extra il proprio uername e tabella da modificare
esegui query normalmente
elimina da tabella extra la tabella modificata
Puoi distribuirlo anche nel tempo
[così hai la possibilità di mostrare le tabelle in concorso]
Cristiano
---
Originariamente inviato da rebelia : solo un nerd puo' pensare di tacchinare in un forum di informatica
ok grazie...
cmq avevo risolto con una cosa simile, invece di inserire il nome delle tabelle, ho inserito il nome dello script di riferimento. così in quella sezione non si entra.
cmq grazie 1000
ciao
neorf
www.TriX.IT - Web Development