Io non ho capito di quali "due tabelle" parli. Mi pare tu ne abbia menzionata una sola.
Se puoi specificare meglio.
E non ho capito bene cosa vuoi 'spezzare/distribuire' tra più tabelle.
Io farei semplicemente
TbUtenti
----------------------------------
idUtente | int (Primary Key)
Nome | varchar(50)
....
... altri attributi degli utenti
....
TbInserimenti
----------------------------------
idInserimento | int (Primary Key)
idUtente | int
TestoInserito | varchar(4000)
Visibile | bit
....
... altri attributi degli inserimenti
...
Non vedo modo migliore di organizzarlo. Quando il database è normalizzato (argomento FONDAMENTALE da conoscere per progettare db) non c'è più molto da fare. Documentati sulla normalizzazione e già capirai più o meno cosa fare.
Per il resto si tratta solamente di scrivere bene le query, selezionando sempre e solo i dati necessari.
Per esempio piuttosto di:
codice:
SELECT *
FROM TbInserimenti
WHERE idUtente = <idUtenteRicercato>
è meglio:
codice:
SELECT idInserimento, TestoInserito
FROM TbInserimenti
WHERE idUtente = <idUtenteRicercato>
AND Visibile = 1
Eviti di andare a creare recordset con dati superflui (e quindi più pesanti da gestire/navigater).
Inoltre usa il più possibile INNER/LEFT/RIGHT JOIN piuttosto che definire le relazioni nella WHERE.
Non so se lo fai ma spesso alcuni (io stesso fino a qualche anno fa) fanno:
codice:
SELECT idElemento, Valore
FROM TbElementi, TbLista
WHERE TbElementi.idElemento = TbLista.idElemento
Molto meglio
codice:
SELECT idElemento, Valore
FROM TbElementi
INNER JOIN TbLista ON TbElementi.idElemento = TbLista.idElemento
Qua non cambia molto ma a seconda della query fa una differenza enorme!
Apparte tutto questo ..... beh posso riprendere il suggerimento sopra di provare ad utilizzare bene gli indici.
E se non sei soddisfatto e non riesci a migliorare ulteriormente ti suggerisco di fare in modo di mostrare durante il caricamento dei dati un'immagine che avverte l'utente di attendere il caricamento dei dati (che puoi poi rimuovere tramite Javascript, una volta caricato tutto).
Facci sapere.