diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2013-04-04 09:47:32 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2013-04-10 18:46:44 +0200 |
commit | 6d4b471afd63780b8a8a6c2d3fb8cc529ab5b15d (patch) | |
tree | d4cf0158f1b2ac03736b662003dbd11b556babef /odb/relational/mssql | |
parent | b0391e168b489811708ca7ba5f71a0eb67b46ffe (diff) |
Generate add/drop index migration statements
Diffstat (limited to 'odb/relational/mssql')
-rw-r--r-- | odb/relational/mssql/schema.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/odb/relational/mssql/schema.cxx b/odb/relational/mssql/schema.cxx index 11467b3..58c0206 100644 --- a/odb/relational/mssql/schema.cxx +++ b/odb/relational/mssql/schema.cxx @@ -290,6 +290,21 @@ namespace relational trav_rel::unames n (fk); names (t, n); } + + struct drop_index: relational::drop_index, context + { + drop_index (base const& x): base (x) {} + + virtual void + drop (sema_rel::index& in) + { + sema_rel::table& t (static_cast<sema_rel::table&> (in.scope ())); + + os << "DROP INDEX " << name (in) << " ON " << + quote_id (t.name ()) << endl; + } + }; + entry<drop_index> drop_index_; } } } |