bentheimmigrant
Lost & confused
- Local time
- Today, 21:00
- Joined
- Aug 21, 2015
- Messages
- 60
I know this is a very common question, so of course I have come across the list of reasons this could be happening:
http://allenbrowne.com/ser-61.html
The setup is fairly straightforward. I have two tables, "Calc" and "Mol_fraction". There is a field in both called "Fluid_ID". The values of "Fluid_ID" in fact come from the table "Fluids", where it is the primary key.
I have a combobox on a form for the user to select the "Calc_ID", which is the primary key of the "Calc" table.
So the query is as follows (built using the query builder):
However, when I try to type into the bound fields, it tells me "This Recordset is not updateable". I can only assume from the list that it's due to "The fields in a JOIN are not indexed correctly: there is no primary key or unique index on the JOINed fields."
So I tried using "Fluids" instead, where there is already a pre-defined relationship between the "Fluid_ID" fields:
This also is not updateable.
The "Fluid_ID" in "Mol_fractions" is set to "Indexed (allow duplicates)". I assume this is correct?
Help! I am lost and confused!
The query properties box:

http://allenbrowne.com/ser-61.html
The setup is fairly straightforward. I have two tables, "Calc" and "Mol_fraction". There is a field in both called "Fluid_ID". The values of "Fluid_ID" in fact come from the table "Fluids", where it is the primary key.
I have a combobox on a form for the user to select the "Calc_ID", which is the primary key of the "Calc" table.
So the query is as follows (built using the query builder):
Code:
SELECT Mol_fraction.*
FROM Calc INNER JOIN Mol_fraction ON Calc.Fluid_ID = Mol_fraction.Fluid_ID
WHERE (((Calc.Calc_ID)=[Forms]![Main_Form]![Calc_box]))
ORDER BY Mol_fraction.Order;
However, when I try to type into the bound fields, it tells me "This Recordset is not updateable". I can only assume from the list that it's due to "The fields in a JOIN are not indexed correctly: there is no primary key or unique index on the JOINed fields."
So I tried using "Fluids" instead, where there is already a pre-defined relationship between the "Fluid_ID" fields:
Code:
SELECT Mol_fraction.*
FROM Fluids INNER JOIN Mol_fraction ON Fluids.Fluid_ID = Mol_fraction.Fluid_ID
WHERE (((Fluids.Fluid_ID)=DLookUp("Fluid_ID",[Calc],"Calc_ID = " & [Forms]![Main_Form]![Calc_box])))
ORDER BY Mol_fraction.Order;
This also is not updateable.
The "Fluid_ID" in "Mol_fractions" is set to "Indexed (allow duplicates)". I assume this is correct?
Help! I am lost and confused!
The query properties box:
