Instrução SQL Multiple Join

Quando eu tinha apenas uma junit interna na minha instrução SQL, funcionava perfeitamente. Eu tentei entrar em uma segunda tabela e agora estou recebendo um erro que diz que há um erro de syntax (operador ausente). O que está errado aqui?

adsFormView.SelectCommand = "SELECT * FROM [tableCourse] INNER JOIN [tableGrade] ON [tableCourse].[grading] = [tableGrade].[id] INNER JOIN [tableCourseType] ON [tableCourse].[course_type] = [tableCourseType].[id] WHERE [prefix]='" & myPrefix & "' AND [course_number]='" & myCourseNum & "'" 

Para junções de várias tabelas, você precisa aninhar as junções extras entre colchetes:

 SELECT ... FROM ((origintable JOIN jointable1 ON ...) JOIN jointable2 ON ...) JOIN jointable3 ON ... 

Basicamente, para cada tabela extra que você une após a primeira, você precisa de um suporte antes da tabela ‘FROM’ original e de um colchete de fechamento na cláusula JOIN ‘on’ correspondente.

MS Access (especificamente, Jet / ACE) requer parênteses com várias associações. Experimentar:

 adsFormView.SelectCommand = _ " SELECT * FROM ([tableCourse] " & _ " INNER JOIN [tableGrade] " & _ " ON [tableCourse].[grading] = [tableGrade].[id]) " & _ " INNER JOIN [tableCourseType] " & _ " ON [tableCourse].[course_type] = [tableCourseType].[id] " & _ " WHERE [prefix]='" & myPrefix & "'" & _ " AND [course_number]='" & myCourseNum & "'"