Index: sql/meta_table.cc |
=================================================================== |
--- sql/meta_table.cc (revision 124285) |
+++ sql/meta_table.cc (working copy) |
@@ -32,8 +32,7 @@ |
db_ = db; |
if (!DoesTableExist(db)) { |
if (!db_->Execute("CREATE TABLE meta" |
- "(key LONGVARCHAR NOT NULL UNIQUE PRIMARY KEY," |
- "value LONGVARCHAR)")) |
+ "(key LONGVARCHAR NOT NULL UNIQUE PRIMARY KEY, value LONGVARCHAR)")) |
return false; |
// Note: there is no index over the meta table. We currently only have a |
@@ -49,6 +48,24 @@ |
db_ = NULL; |
} |
+void MetaTable::SetVersionNumber(int version) { |
+ SetValue(kVersionKey, version); |
+} |
+ |
+int MetaTable::GetVersionNumber() { |
+ int version = 0; |
+ return GetValue(kVersionKey, &version) ? version : 0; |
+} |
+ |
+void MetaTable::SetCompatibleVersionNumber(int version) { |
+ SetValue(kCompatibleVersionKey, version); |
+} |
+ |
+int MetaTable::GetCompatibleVersionNumber() { |
+ int version = 0; |
+ return GetValue(kCompatibleVersionKey, &version) ? version : 0; |
+} |
+ |
bool MetaTable::SetValue(const char* key, const std::string& value) { |
Statement s; |
PrepareSetStatement(&s, key); |
@@ -56,6 +73,20 @@ |
return s.Run(); |
} |
+bool MetaTable::SetValue(const char* key, int value) { |
+ Statement s; |
+ PrepareSetStatement(&s, key); |
+ s.BindInt(1, value); |
+ return s.Run(); |
+} |
+ |
+bool MetaTable::SetValue(const char* key, int64 value) { |
+ Statement s; |
+ PrepareSetStatement(&s, key); |
+ s.BindInt64(1, value); |
+ return s.Run(); |
+} |
+ |
bool MetaTable::GetValue(const char* key, std::string* value) { |
Statement s; |
if (!PrepareGetStatement(&s, key)) |
@@ -65,13 +96,6 @@ |
return true; |
} |
-bool MetaTable::SetValue(const char* key, int value) { |
- Statement s; |
- PrepareSetStatement(&s, key); |
- s.BindInt(1, value); |
- return s.Run(); |
-} |
- |
bool MetaTable::GetValue(const char* key, int* value) { |
Statement s; |
if (!PrepareGetStatement(&s, key)) |
@@ -81,13 +105,6 @@ |
return true; |
} |
-bool MetaTable::SetValue(const char* key, int64 value) { |
- Statement s; |
- PrepareSetStatement(&s, key); |
- s.BindInt64(1, value); |
- return s.Run(); |
-} |
- |
bool MetaTable::GetValue(const char* key, int64* value) { |
Statement s; |
if (!PrepareGetStatement(&s, key)) |
@@ -97,28 +114,13 @@ |
return true; |
} |
-void MetaTable::SetVersionNumber(int version) { |
- SetValue(kVersionKey, version); |
+bool MetaTable::DeleteKey(const char* key) { |
+ DCHECK(db_); |
+ Statement s(db_->GetUniqueStatement("DELETE FROM meta WHERE key=?")); |
+ s.BindCString(0, key); |
+ return s.Run(); |
} |
-int MetaTable::GetVersionNumber() { |
- int version = 0; |
- if (!GetValue(kVersionKey, &version)) |
- return 0; |
- return version; |
-} |
- |
-void MetaTable::SetCompatibleVersionNumber(int version) { |
- SetValue(kCompatibleVersionKey, version); |
-} |
- |
-int MetaTable::GetCompatibleVersionNumber() { |
- int version = 0; |
- if (!GetValue(kCompatibleVersionKey, &version)) |
- return 0; |
- return version; |
-} |
- |
void MetaTable::PrepareSetStatement(Statement* statement, const char* key) { |
DCHECK(db_ && statement); |
statement->Assign(db_->GetCachedStatement(SQL_FROM_HERE, |
@@ -131,9 +133,7 @@ |
statement->Assign(db_->GetCachedStatement(SQL_FROM_HERE, |
"SELECT value FROM meta WHERE key=?")); |
statement->BindCString(0, key); |
- if (!statement->Step()) |
- return false; |
- return true; |
+ return statement->Step(); |
} |
} // namespace sql |