title: Site performance decreased after changing varchar to nvarchar
body: <p>I recently had to convert one of the table's column definition to <code>nvarchar</code> from <code>varchar</code>. Since that, I can feel that the searching data thru the table has became slower. </p>
  
  <p>I have like 4200000+ rows in the table and growing.</p>
  
  <p>My web app doesn't currently use stored procedures to retrieve data from the database. If I use stored proc, will it slightly improve the searching performance?</p>
  
  <p>Or is there any other advice you'd give for improvement?</p>
  
  <p>Here is the query currently used now:</p>
  
  <pre><code>SELECT TOP 100 id, callerID, dateTime, activity, senderNum, msgSent, smsgRespond, msgIn 
  FROM tbl_activitylog 
  WHERE callerID = @callerID 
  ORDER BY id DESC
  </code></pre>
  
  <p>The column <code>msgSent</code> is the one which was converted to nvarchar.</p>
  
  <p>Below is the table structure: </p>
  
  <pre><code>id (int, Primary Key, Auto Increment)  
  callerID (bigint)  
  dateTime (datetime)  
  activity (varchar(50)  
  senderNum (int)  
  msgSent (nvarchar(160))  
  smsgRespond (varchar(50))  
  msgIn (varchar(160))  
  </code></pre>
  
  <p>I do not understand the index part.</p>