>mh... un esempio di query lo potresti incollare?
Ti allego uno script per SQL Server ma concettualmente il discorso rimane identico in Access:
USE tempdb;
CREATE TABLE T_UTENTI(
UtenteID int NOT NULL,
Nome varchar(10) NOT NULL,
Cognome varchar(10) NOT NULL,
CONSTRAINT PK_T_UTENTI PRIMARY KEY(UtenteID)
);
CREATE TABLE T_MSG(
MessaggioID int NOT NULL,
Messaggio varchar(15) NOT NULL
CONSTRAINT PK_T_MSG PRIMARY KEY(MessaggioID)
);
CREATE TABLE T_MSG_UTENTI(
UtenteID int NOT NULL,
MessaggioID int NOT NULL,
CONSTRAINT PK_T_MSG_UTENTI PRIMARY KEY(UtenteID, MessaggioID),
CONSTRAINT FK_T_UTENTI FOREIGN KEY(UtenteID)
REFERENCES T_UTENTI(UtenteID),
CONSTRAINT FK_T_MSG FOREIGN KEY(MessaggioID)
REFERENCES T_MSG(MessaggioID)
);
INSERT INTO T_UTENTI VALUES(1, 'Lorenzo', 'Benaglia');
INSERT INTO T_UTENTI VALUES(2, 'Luca', 'Bianchi');
INSERT INTO T_UTENTI VALUES(3, 'Andrea', 'Montanari');
INSERT INTO T_UTENTI VALUES(4, 'Gianluca', 'Hotz');
INSERT INTO T_MSG VALUES(1, 'Messaggio 1');
INSERT INTO T_MSG VALUES(2, 'Messaggio 2');
INSERT INTO T_MSG VALUES(3, 'Messaggio 3');
INSERT INTO T_MSG VALUES(4, 'Messaggio 4');
INSERT INTO T_MSG_UTENTI VALUES(1, 2);
INSERT INTO T_MSG_UTENTI VALUES(3, 2);
INSERT INTO T_MSG_UTENTI VALUES(4, 1);
INSERT INTO T_MSG_UTENTI VALUES(2, 3);
INSERT INTO T_MSG_UTENTI VALUES(2, 4);
SELECT
U.Nome
, U.Cognome
, M.Messaggio
FROM T_UTENTI AS U
INNER JOIN T_MSG_UTENTI AS MU
ON U.UtenteID = MU.UtenteID
INNER JOIN T_MSG AS M
ON MU.MessaggioID = M.MessaggioID;
/* Output:
Nome Cognome Messaggio
---------- ---------- ---------------
Lorenzo Benaglia Messaggio 2
Luca Bianchi Messaggio 3
Luca Bianchi Messaggio 4
Andrea Montanari Messaggio 2
Gianluca Hotz Messaggio 1
(5 row(s) affected)
*/
DROP TABLE T_MSG_UTENTI, T_UTENTI, T_MSG;
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org