title: Best way to build a search function
body: <p>I have a website that has over 400,000 items.  Some similar, some vastly different.  We want to provide a way to search these items the best way possible.  After being delivered the website it was using full text indexing.  The solution is basic at best, woefully inadequate at worst.  </p>
  
  <p>So what is the best way to search these items?  They are stored in a SQL Server Database (2005).  Our website is designed in C# 2.0.  </p>
  
  <p>Currently here is the process:</p>
  
  <ol>
  <li>User enters value into text box.</li>
  <li>We 'clean' this entry.  Removing 'scary' characters that could be an attempted hack. Remove key words (and, or, etc..)</li>
  <li>Pass value into a stored procedure to return results.</li>
  <li>Return results.</li>
  </ol>