Campo SQLite con una list de foreign keys

Estoy construyendo una database SQLite para mantener las lists de mis agentes de bienes raíces. He podido utilizar una key externa para identificar una list para cada agente, pero quiero hacer una list de listdos en el logging de cada agente; pasar de una relación de uno a uno entre agentes y listdos a una relación de uno a muchos.

Mirando aquí: http://www.sqlite.org/draft/foreignkeys.html , no se menciona un campo que es una 'list de keys externas'. Es lo que estoy tratando de hacer?

Consideré que, como solución alternativa, podría crear una tabla que contenga las relaciones en sí mismas, pero esa no parece ser una solución muy clara. Miré este hilo: ejemplos de keys externas SQLite , pero no estoy seguro de que mis elementos sean similares a la relación muchos a muchos que describen allí.

También estoy abierto a sugerencias sobre cómo se puede hacer esto mejor. ¿Debería simplemente include el nombre de un agente de listdo en la tabla de listdo real y solo realizar una consulta desde allí?

CREATE TABLE listings ( listing_id INTEGER PRIMARY KEY AUTOINCREMENT, listing_address TEXT UNIQUE NOT NULL, acq_date DATE ) CREATE TABLE agent ( agent_id INTEGER PRIMARY KEY AUTOINCREMENT, agent_name TEXT NOT NULL, agent_listings INTEGER, FOREIGN KEY (agent_listings) REFERENCES listings (listing_id) NOT NULL ) 

En su lugar, debe agregar la key externa a la tabla de listings ; para una relación de uno a muchos es el lado 'muchos' el que registra la key externa.

 CREATE TABLE listings ( listing_id INTEGER PRIMARY KEY AUTOINCREMENT, listing_address TEXT UNIQUE NOT NULL, acq_date DATE agent_id INTEGER, FOREIGN KEY (agent_id) REFERENCES agent (agent_id) ) CREATE TABLE agent ( agent_id INTEGER PRIMARY KEY AUTOINCREMENT, agent_name TEXT NOT NULL, ) 

Si desea que los listdos sean manejados por múltiples agentes (en una relación de muchos a muchos), tendrá que agregar una tabla de enlaces:

 CREATE TABLE listings ( listing_id INTEGER PRIMARY KEY AUTOINCREMENT, listing_address TEXT UNIQUE NOT NULL, acq_date DATE ) CREATE TABLE agent ( agent_id INTEGER PRIMARY KEY AUTOINCREMENT, agent_name TEXT NOT NULL, ) CREATE TABLE agent_listings ( agent_id INTEGER NOT NULL, listing_id INTEGER NOT NULL, UNIQUE (agent_id, listing_id), FOREIGN KEY (agent_id) REFERENCES agent (agent_id), FOREIGN KEY (listing_id) REFERENCES listings (listing_id), )