title: Complex JOINS in Access SQL difficult to convert to JET OLEDB
body: <p>I'm a long time follower of Stack overflow but this is my first post.  I'm hoping the community can help.</p>
  
  <p>I have a successful Access Query that returns the required results - Perfect!<br>
  HOWEVER, I'm trying to return the same using OLEDB connection to the database within an ASP script.  This is all legacy stuff however we are allowing web access to this legacy information.</p>
  
  <p>MS Access (2016) shows Query as this... (works)</p>
  
  <pre><code>SELECT [EventName] &amp; ": " &amp; [RoundCaption] AS RoundTitle, ChunkEntryTable.WinPos
  FROM ((EventTable INNER JOIN EventRoundTable ON EventTable.EventId = EventRoundTable.EventId) INNER JOIN ((RoundHeatTable INNER JOIN ChunkTable ON RoundHeatTable.RoundHeatId = ChunkTable.RoundHeatId) INNER JOIN (EventEntryTable INNER JOIN ChunkEntryTable ON EventEntryTable.EventEntryId = ChunkEntryTable.EventEntryId) ON ChunkTable.ChunkId = ChunkEntryTable.ChunkId) ON EventRoundTable.RoundKeyId = RoundHeatTable.RoundKeyId) LEFT JOIN EventEntryMemberTable ON EventEntryTable.EventEntryId = EventEntryMemberTable.EventEntryId
  WHERE (((EventEntryTable.Entry1Id)=[EntryId])) OR (((EventEntryTable.Entry2Id)=[EntryId])) OR (((EventEntryTable.Entry3Id)=[EntryId])) OR (((EventEntryMemberTable.MemberId)=[EntryId]))
  ORDER BY EventTable.SortIdx, EventRoundTable.RoundId DESC , EventRoundTable.IsRepechage DESC;
  </code></pre>
  
  <p>Doing this in OLEDB.  Connection string as follows...</p>
  
  <pre><code>&lt;%
  ' FileName="Connection_ado_conn_string.htm"
  ' Type="ADO" 
  ' DesigntimeType="ADO"
  ' HTTP="true"
  ' Catalog=""
  ' Schema=""
  Dim MM_csresultdb_STRING
  MM_csresultdb_STRING = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=xyz.mde;Jet OLEDB:Database Password=xxxxxxxxx;"
  %&gt;
  </code></pre>
  
  <p>Connection works perfectly but I can't seem to get the SQL command to work. I get "No value given for one or more required parameters".
  NOTE: I have replaced [EntryID] in 4 places with a valid value and it works perfectly in Access just not outside of Access using OLEDB.  Here's what the SQL is I'm using...</p>
  
  <pre><code>SELECT EventTable.EventName &amp; ": " &amp; EventRoundTable.RoundCaption AS RoundTitle, ChunkEntryTable.WinPos FROM 
   ((EventTable INNER JOIN EventRoundTable ON EventTable.EventId = EventRoundTable.EventId) INNER JOIN
  ((RoundHeatTable INNER JOIN ChunkTable ON RoundHeatTable.RoundHeatId = ChunkTable.RoundHeatId) INNER JOIN
  (EventEntryTable INNER JOIN ChunkEntryTable ON EventEntryTable.EventEntryId = ChunkEntryTable.EventEntryId) ON ChunkTable.ChunkId = ChunkEntryTable.ChunkId) ON ChunkTable.ChunkId = ChunkEntryTable.ChunkId)
  ON EventRoundTable.RoundKeyId = RoundHeatTable.RoundKeyId) 
  WHERE ((EventEntryTable.Entry1Id)=4741) OR ((EventEntryTable.Entry2Id)=4741) OR ((EventEntryTable.Entry3Id)=4741)
  ORDER BY EventTable.SortIdx, EventRoundTable.RoundId DESC , EventRoundTable.IsRepechage DESC;
  </code></pre>
  
  <p>FOUND PROBLEM ** See answer below</p>