Syntax error (missing operator) in query expression

I

isaac2004

hello i am getting a weird al syntax error from my SQL statement

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing
operator) in query expression 'tblBookDescription.strTitle Where
(((tblCategories.strCategory) = 'Database'))'.

/06Winter/levini/A07/SearchBrowse.asp, line 53


here is my server side code ps. i have already dim strSQL and objRS
prior

<% dim strBrowse

strBrowse = request.querystring("strBrowse")



'sql statement with random book ids
strSQL = "SELECT tblCategories.strCategory, tblBookDescription.ISBN,
tblBookDescription.strTitle, tblBookDescription.strDescription,
tblAuthorsBooks.AuthorID " & _
"FROM (tblBookDescription INNER JOIN tblAuthorsBooks ON
tblBookDescription.ISBN = tblAuthorsBooks.ISBN) INNER JOIN
tblCategories ON tblBookDescription.ISBN = tblCategories.ISBN " & _
"ORDER BY tblBookDescription.strTitle "



'response.write("strSQL = " & strSQL)


if strBrowse > "" then
'browse
strSQL = strSQL & " Where (((tblCategories.strCategory) = '" &
strBrowse & "')); "
end if


response.write("strSQL = " & strSQL)

Set objRS = Server.CreateObject("ADODB.Recordset")

--------------------------------------------------------------error
here
objRS.open strSQL, objConn
-----------------------------------------------------------------

%>

my response write outputs

strSQL = SELECT tblCategories.strCategory, tblBookDescription.ISBN,
tblBookDescription.strTitle, tblBookDescription.strDescription,
tblAuthorsBooks.AuthorID FROM (tblBookDescription INNER JOIN
tblAuthorsBooks ON tblBookDescription.ISBN = tblAuthorsBooks.ISBN)
INNER JOIN tblCategories ON tblBookDescription.ISBN =
tblCategories.ISBN ORDER BY tblBookDescription.strTitle Where
(((tblCategories.strCategory) = 'Database'));

thanx for the help
 
B

Bob Barrows [MVP]

isaac2004 said:
my response write outputs

strSQL = SELECT tblCategories.strCategory, tblBookDescription.ISBN,
tblBookDescription.strTitle, tblBookDescription.strDescription,
tblAuthorsBooks.AuthorID FROM (tblBookDescription INNER JOIN
tblAuthorsBooks ON tblBookDescription.ISBN = tblAuthorsBooks.ISBN)
INNER JOIN tblCategories ON tblBookDescription.ISBN =
tblCategories.ISBN ORDER BY tblBookDescription.strTitle Where
(((tblCategories.strCategory) = 'Database'));

What happens when you open your database in Access, paste this sql statement
into the SQL View of a Query Builder, and try to run it?
 
B

Bob Barrows [MVP]

isaac2004 said:
hello i am getting a weird al syntax error from my SQL statement
my response write outputs

strSQL = SELECT tblCategories.strCategory, tblBookDescription.ISBN,
tblBookDescription.strTitle, tblBookDescription.strDescription,
tblAuthorsBooks.AuthorID FROM (tblBookDescription INNER JOIN
tblAuthorsBooks ON tblBookDescription.ISBN = tblAuthorsBooks.ISBN)
INNER JOIN tblCategories ON tblBookDescription.ISBN =
tblCategories.ISBN ORDER BY tblBookDescription.strTitle Where
(((tblCategories.strCategory) = 'Database'));

thanx for the help
Actually, it's not a weird error at all: it's the error one should expect to
get when trying to put the WHERE clause after the ORDER BY clause.
The clauses need to be in the correct order:
SELECT ...
FROM ...
WHERE ...
GROUP BY ...
HAVING ...
ORDER BY ...

Bob Barrows
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,968
Messages
2,570,152
Members
46,697
Latest member
AugustNabo

Latest Threads

Top