Microsoft
Software
Hardware
Network
Question : MS Access update statement with subquery in the set clause?
Experts,
I am trying to run the following update this update statement works:
UPDATE MJM_ATTEND_PAY_INDIV SET MJM_ATTEND_PAY_INDIV.ATTEN
D_PER_MONT
H = 4
WHERE (((MJM_ATTEND_PAY_INDIV.RO
W_ID) In (SELECT [MJM_ATTEND_PAY_INDIV].[RO
W_ID]
FROM MJM_SCHOOL, MJM_CLASS, MJM_STUDENT, MJM_ATTEND_PAY_INDIV
WHERE [MJM_SCHOOL].[ROW_ID]=[MJM
_CLASS].[S
CHOOL_ID] And
[MJM_CLASS].[ROW_ID]=[MJM_
STUDENT].[
CLASS_ID] And
[MJM_STUDENT].[ROW_ID]=[MJ
M_ATTEND_P
AY_INDIV].
[STUDENT_I
D] And
[MJM_STUDENT].[ACTIVE_FLG]
= -1 And
[MJM_ATTEND_PAY_INDIV].[PA
ID_FLG]=0 And
[MJM_SCHOOL].[ROW_ID] IN (select row_id from mjm_school as sc where sc.active_flg = -1 and sc.billing_flg = -1 and sc.payment_type = 'Individual') And
[MJM_ATTEND_PAY_INDIV].[BI
LLING_MONT
H]=[Date])
));
However instead of hardcoding the number 4 at the end of the set statement, I want to use a subselect:
UPDATE MJM_ATTEND_PAY_INDIV SET MJM_ATTEND_PAY_INDIV.ATTEN
D_PER_MONT
H = (select config_value from mjm_lu_config where config_type = 'Week Override')
WHERE (((MJM_ATTEND_PAY_INDIV.RO
W_ID) In (SELECT [MJM_ATTEND_PAY_INDIV].[RO
W_ID]
FROM MJM_SCHOOL, MJM_CLASS, MJM_STUDENT, MJM_ATTEND_PAY_INDIV
WHERE [MJM_SCHOOL].[ROW_ID]=[MJM
_CLASS].[S
CHOOL_ID] And
[MJM_CLASS].[ROW_ID]=[MJM_
STUDENT].[
CLASS_ID] And
[MJM_STUDENT].[ROW_ID]=[MJ
M_ATTEND_P
AY_INDIV].
[STUDENT_I
D] And
[MJM_STUDENT].[ACTIVE_FLG]
= -1 And
[MJM_ATTEND_PAY_INDIV].[PA
ID_FLG]=0 And
[MJM_SCHOOL].[ROW_ID] IN (select row_id from mjm_school as sc where sc.active_flg = -1 and sc.billing_flg = -1 and sc.payment_type = 'Individual') And
[MJM_ATTEND_PAY_INDIV].[BI
LLING_MONT
H]=[Date])
));
I know the subselect only returns 1 row. However, when I do this I get an error that says "query must be updateable".
I would think I would be able to do this, am I doing something wrong?
Thank you in advance for the help.
- Mike
Answer : MS Access update statement with subquery in the set clause?
PARAMETERS [Week Overide] Text ( 255 );
UPDATE MJM_ATTEND_PAY_INDIV SET MJM_ATTEND_PAY_INDIV.ATTEN
D_PER_MONT
H = (select config_value from mjm_lu_config where config_type = [Week Override])
WHERE (((MJM_ATTEND_PAY_INDIV.RO
W_ID) In (SELECT [MJM_ATTEND_PAY_INDIV].[RO
W_ID]
FROM MJM_SCHOOL, MJM_CLASS, MJM_STUDENT, MJM_ATTEND_PAY_INDIV
WHERE [MJM_SCHOOL].[ROW_ID]=[MJM
_CLASS].[S
CHOOL_ID] And
[MJM_CLASS].[ROW_ID]=[MJM_
STUDENT].[
CLASS_ID] And
[MJM_STUDENT].[ROW_ID]=[MJ
M_ATTEND_P
AY_INDIV].
[STUDENT_I
D] And
[MJM_STUDENT].[ACTIVE_FLG]
= -1 And
[MJM_ATTEND_PAY_INDIV].[PA
ID_FLG]=0 And
[MJM_SCHOOL].[ROW_ID] IN (select row_id from mjm_school as sc where sc.active_flg = -1 and sc.billing_flg = -1 and sc.payment_type = 'Individual') And
[MJM_ATTEND_PAY_INDIV].[BI
LLING_MONT
H]=[Date])
));
Random Solutions
symantec, norton ghost 10, cloned drive will not boot, cloned drive would boot to start up screen xp but no sign in icons
Problem with Asp.Net AJAX AutocompleteExtender
Windows Server 2003 display settings
Populating one sharepoint list with info from another list
horizontal scroll bar missing
ODBC - User DSN, System DSN, File DSN???
sed to delete lines with multiple matching patterns
how we can send message from server to CLIENT Comptuers ?
Run-time error 2501 The OpenReport action was canceled
Right click on folder,can not open Properties and Sharing.