[Answers Inline]
On Mon, 30 Aug 2004 13:53:06 +0100, "mark | r" <ma******@gmail.com>
wrote:
"Thomas Gullen" <ad***@drum-world.com> wrote in message
news:41************@drum-world.com... Hi Donald,
Searching a database is always done in SQL. To acheive a search on an
access database you would need to:
1) Create a search form
2) When the search is processed in the ASP code build up the SQL query
using operators such as LIKE, OR and AND.
3) Execute the query and return all the results.
So, you might for example have one textbox named 'searchtext'. Someone
might enter 'pulp fiction'. In the processing page you would do:
sqlvar = "SELECT * FROM tableFilms WHERE name LIKE '%" &
Request.form("searchtext") & "%'"
This would produce:
SELECT * FROM tableFilms WHERE name LIKE '%Pulp Fiction%'
Then, execute sqlvar on your database. This would return all records
where the name contains 'pulp fiction'. Check w3schools tutorials on
the LIKE comparison.
You can add more fields to your search form, like dates and one by one
process the search fields slowly building up the SQL query before
execution.
Hope this helped,
Tom
Tom. do you have any tips for rating the results on the fly and showing the
most relevant results first?
Rating systems are tough because it depends on what you (or your user)
rates as higher than something else. For example, in a search of a
name, you're searching for:
Tom Jones
Define which of these is closer:
Thomas Jones
Tom Jonas
Tony Jones
You may say "Thomas Jones" and it's obvious to you. But "Tom Jonas"
has more matching letters, has more in the right places, is closer
alphabetically and wins all around. Tony Jones is actually closer
since it has a "To" and not a "Th" to start.
Might look at third party search products. :)
Jeff