Android SQLiteDatabase.delete method wouldn't delete using where args
<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>
