Can anyone advise on the best structure for the following situation please?:
I have been asked to look at an access datatbase for a local charity which receives enquiries for services such as doing laundry, performing household tasks etc for elderly/infirm people. The database has been built up by someone else.
They already have a table of clients (with name address, dob information etc), a table of services-provided for clients (dates, type of service etc.) and a table of enquiries-for-services (name/address of enquirer, date of enquiry etc.). Some of the enquiries are by existing clients and some are from new people and may not result in a service, because it is not available from the charity or the enquirer is not eligible.
The charity’s funders require demographic information about the clients and the enquirers and this is difficult to achieve with the clients and enquirers intermingled in two tables.
I think that this would be best achieved by having a People table with name/address etc info of both established clients and ALL enquirers. This would have a PersonID, which would link to enquiries in the enquiries table and to services-provided in the service-provided table. This approach will probably lead to a people table which is cluttered up with a mixture of established clients, one-time enquirers and anonymous enquirers, whereas currently the Clients table only has ‘pure’ clients in it.
Is there a best practice out there for such a situation?
I am quite experienced in access, vba and relational integrity.
Thank you for reading this far.
I have been asked to look at an access datatbase for a local charity which receives enquiries for services such as doing laundry, performing household tasks etc for elderly/infirm people. The database has been built up by someone else.
They already have a table of clients (with name address, dob information etc), a table of services-provided for clients (dates, type of service etc.) and a table of enquiries-for-services (name/address of enquirer, date of enquiry etc.). Some of the enquiries are by existing clients and some are from new people and may not result in a service, because it is not available from the charity or the enquirer is not eligible.
The charity’s funders require demographic information about the clients and the enquirers and this is difficult to achieve with the clients and enquirers intermingled in two tables.
I think that this would be best achieved by having a People table with name/address etc info of both established clients and ALL enquirers. This would have a PersonID, which would link to enquiries in the enquiries table and to services-provided in the service-provided table. This approach will probably lead to a people table which is cluttered up with a mixture of established clients, one-time enquirers and anonymous enquirers, whereas currently the Clients table only has ‘pure’ clients in it.
Is there a best practice out there for such a situation?
I am quite experienced in access, vba and relational integrity.
Thank you for reading this far.