Hi whyulil,
Like operator works like searching for the defined string within the column in question for every row. So that is always a slower way of finding things from database.
When you search something like
Code:
Select * from TABLENAME where STRINGFIELD="MY String"
You search for a value that is the value of the column.
But when you say
Code:
Select * from TABLENAME where STRINGFIELD LIKE "%MY String%"
This "My String" can appear in any position within the column and the db has to search patterned string within a string for every row. So obviously this is slow.
Imagine when you search for something with LIKE operator, in a db that has 1 million rows. So you cannot expect it to be faster. And see the number of LIKE operators that you use in your query. That is really going to take time be it Access or SQL server.
I would suggest you to try a simple query with one LIKE operator
Code:
SELECT Title FROM SubjectArea WHERE Title LIKE '%maths%'
SELECT Title FROM SubjectArea WHERE Title LIKE '%art%'
Also check for case sensitivity. Some DBs like SQL server ones are not CASE sentitive.
And test that out running in Access directly then using ASP, compare the results in both cases. If ASP doesn't return result and if you generate query based on values from ASP page, may be the Query that you generate is not generated as expected. So just after the query is generated, immediately do a RESPONSE.WRITE of that query string and copy paste that in Access to see if that gives desired output, else you will have to re-write the query in ASP.
Hope that helps.
Cheers!
_________________________
-Vijay G

Strive for Perfection
