Salve a tutti i miei problema sono questi due:
Primo Problema
Ho una tabella con vari campi, tra questi due sono quelli che per ora mi servono
Nome tabella: Ingressi
Campi: Nome, Data, ...
In poche parole ogni volta che un utente effettua un ingresso, viene registrato il suo nome, l'orario, più altre informazioni.
Ogni tanto però ho la necessità di dover far pulizia, lasciando soltanto l'ultimo ingresso per ogni utente.
Per far ciò ora come ora esegue le seguenti query (queste incollate qui non sono complete, era per dare un idea delle operazioni):
CREATE TABLE temp_registroingressi(nome varchar( 20 ) NOT NULL default '', orario datetime NOT NULL;
INSERT INTO temp_registroingressi SELECT nome, max(orario) AS orario FROM registroingressi GROUP BY nome;
DROP TABLE registroingressi;
ALTER TABLE temp_registroingressi RENAME registroingressi;
Mi chiedevo, esiste un modo più veloce per eliminare direttamente i record che non mi servono?
Secondo Problema
Ho creato un forum strutturato in questo modo:
Tabella FORUM
Campi: ID,NOME,...
Tabella: TOPIC
Campi: ID,IDFORUM,TITOLO,...
Tabella: POST
Campi: ID,IDTOPIC,MESSAGGIO,...
Ci ho pensato per bene ma ci sono due operazioni che vorrei far eseguire ma non saprei davvero come![]()
La prima è: Come faccio a trovare eventuali Post o Topic orfani? Ovvero Topic che puntano ad un forum non più esistente, o Post di discussioni eliminate?
La seconda è: Man mano che procede il tempo, io cancello i messaggi vecchi, ma ovviamente il loro id continua a crescere, so che cancellando dalla tabella il campo id e poi rimettendolo, il loro conteggio ripartirebbe da zero, ma corro il rischio di sfasare tutto quanto, o almeno se lo facessi con i Topic..
Qualcuno ha qualche idea?
Ringrazio tutti anticipatamente![]()