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.
 
Thank you for the comments.
I'll take in your former suggestion.

ItemData::isAutoIncrementValue() seems to be inappropriate because
AutoIncrement is a concept of DBAgent, not ItemData.