Upsert with autoincrement 2

These patches fix the bug in which DBAgentSQL3 replace the value in the primary key column with 0 on upsert when AUTO_INCLUREMENT_VALUE(_U64) is used.

Different from MySQL's 'ON DUPLICATE KEY UPDATE', SQLite3's REPLACE once deletes
the duplicated row. So the value in the primary key column is changed. This behavior is not
allowed for our current usage.

Thus I implemented the upsert whose behaivor is similar to MySQL's one.
 
This pull request conflicts with #417.