title: Android SQLiteDatabase.delete method wouldn't delete using where args
body: <p>Watch how i call the <code>db.delete</code> method; if I do the following a record is successfully deleted:</p>
  
  <pre><code>public void deteleProfile(Long id) throws SQLException {
          SQLiteDatabase db = helper.getWritableDatabase();
          Integer i = db.delete(ProlificDatabase.TABLE, "_id=?", new String[] {id.toString()});
          Log.d(TAG, i + " records deleted where id is " + id);
  </code></pre>
  
  <p>however if I do this:</p>
  
  <pre><code>public void deteleProfile(Long id) throws SQLException {
          SQLiteDatabase db = helper.getWritableDatabase();
          Integer i = db.delete(ProlificDatabase.TABLE, "?=?", new String[] {BaseColumns._ID,id.toString()});
          Log.d(TAG, i + " records deleted where id is " + id);
  </code></pre>
  
  <p>no records are deleted. also no exceptions or warnings are raised to say something has gone wrong.</p>
  
  <p>in case you didn't catch it, the difference between the two calls were:</p>
  
  <p><code>..."_id=?", new String[] {id.toString()});</code></p>
  
  <p>vs</p>
  
  <p><code>..."?=?", new String[] {BaseColumns._ID,id.toString()});</code></p>
  
  <p>documentation for BaseColumns._ID is:</p>
  
  <p><code>public static final String _ID</code> with a <code>Constant Value: "_id"</code></p>
  
  <p>The latter way seems to make for neater code, but why doesn't it work?</p>
  
  <p><strong>EDIT:</strong>
  I suspect the <code>whereargs</code> parameter only applies to the right side of an expression.</p>
  
  <p>Can someone confirm this?</p>