ciao a tutti
ho una domanda . . .
è possibile in mysql gestre gli accessi multipli a una tebella?
se si come se fa??
basta mettere qualche attributo?
ciao a tutti
ho una domanda . . .
è possibile in mysql gestre gli accessi multipli a una tebella?
se si come se fa??
basta mettere qualche attributo?
Cosa intendi per accessi multipli a una tabella?
ce più persone possono scrivere il db contemporaneamente
cioè...ci sono più utenti nel tuo sito che possono interagire con il database?
Basta avere una tabella dove salvi l'id dell'utente e tutti i suoi dati.
Ovviamente nel database ci saranno le altre tabelle collegate a UTENTI.
Originariamente inviato da izzusan
ciao a tutti
ho una domanda . . .
è possibile in mysql gestre gli accessi multipli a una tebella?
se si come se fa??
basta mettere qualche attributo?
Sì è' possibile usando bene i comandi LOCK TABLES and UNLOCK TABLES.
Quando un'utente deve scrivere su una tabella devi fargli fare questo:
LOCK TABLES nome_tabella WRITE
INSERT INTO nome_tabella VALUES ('blablabla');
così facendo nessun'altro utente potrà scrivere su quella tabella,
almeno non finchè non verrà eseguito un
UNLOCK TABLES
che rende di nuovo scrivibile la tabella in scrittura anche per i altri utenti.
In verità il discorso è molto più complesso (oltre che in write ci sono anche il lock in read, e poi negli accessi multipli entrano in gioco anche le TRANSACTION)
Insomma difficile spiegare da zero il Concurrency Control di MySQL su un forum...
puoi partire dalla documentazione ufficiale per farti un'idea e fare le tue prime prove...
non me ne intendo molto, ma da quanto so non serve affatto bloccare l'intera tabella, lo fa mysql da solo
se ho capito bene non devo bloccare la tabella... devo creare una specie di coda....
devo controllare l'acesso ad una pagina e non devo perdere nessun utente....
se 2 utenti accedono assieme nello stesso istante cosa succede^?
Perché dovrebbe bloccare la tabella? vuole solo tenere sotto-controllo il flusso di utenti che visitano una pagina e che quindi devono interagire con il db stesso.
Se non ho capito male basterebbe tenere conto degli accessi con un semplice script inserito nella pagina che desideri controllare che aggiorna nella tabella un campo magari N_ACCESSI a cui è associato l'id dell'utente stesso.
Se mi sbaglio correggetemi![]()
giustissimo....
però nn so cosa succede se 2 persone accedono contemporaneamente alla tabella...
secondo me non c'è problema. Perchè anche se accedessero entro lo stesso secondo la chiamata al db dovrebbe essere entro l'ordine dei centesimi di secondo se non erro. Quindi è un bel pò difficile che due capitino nello stesso istante.