fixed sqlite3 test // issue #15

Here the patch for https://github.com/SOCI/soci/issues/15

The issue is follows:

We have 3 code path's of SQLite statement.cpp execute(withDataExchange = false)
1. With false
2. With true
3. Either with false or true but with rows destination not empty

Execute(false) and empty destination will not really execute the statement, but prepare for subsequent fetch() requests.

Execute(true) and empty destination will call back-end execute.

3rd one will call bulk fetch to destination regardless of withDataExchange param.