Refactor clearing thumbnail history.

Previously, ThumbnailDatabase exposed much internals knowledge.  Push
most of that down into the class and remove the schema hacks which are
no longer necessary.

BUG=272519
TEST=Unit tests.

Review URL: https://chromiumcodereview.appspot.com/22898003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217993 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/sql/connection.h b/sql/connection.h
index 24f06de..79386064 100644
--- a/sql/connection.h
+++ b/sql/connection.h
@@ -389,6 +389,11 @@
   // last sqlite operation.
   const char* GetErrorMessage() const;
 
+  // Return a reproducible representation of the schema equivalent to
+  // running the following statement at a sqlite3 command-line:
+  //   SELECT type, name, tbl_name, sql FROM sqlite_master ORDER BY 1, 2, 3, 4;
+  std::string GetSchema() const;
+
  private:
   // For recovery module.
   friend class Recovery;