summaryrefslogtreecommitdiff
path: root/odb/relational/sqlite/schema.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/relational/sqlite/schema.cxx')
-rw-r--r--odb/relational/sqlite/schema.cxx18
1 files changed, 17 insertions, 1 deletions
diff --git a/odb/relational/sqlite/schema.cxx b/odb/relational/sqlite/schema.cxx
index 11587ab..bd694e7 100644
--- a/odb/relational/sqlite/schema.cxx
+++ b/odb/relational/sqlite/schema.cxx
@@ -73,9 +73,25 @@ namespace relational
return quote_id (
static_cast<sema_rel::table&> (in.scope ()).name ().uname ());
}
-
};
entry<create_index> create_index_;
+
+ struct drop_index: relational::drop_index, context
+ {
+ drop_index (base const& x): base (x) {}
+
+ virtual string
+ name (sema_rel::index& in)
+ {
+ // In SQLite, index names can be qualified with the database.
+ //
+ sema_rel::table& t (static_cast<sema_rel::table&> (in.scope ()));
+ sema_rel::qname n (t.name ().qualifier ());
+ n.append (in.name ());
+ return quote_id (n);
+ }
+ };
+ entry<drop_index> drop_index_;
}
}
}