aboutsummaryrefslogtreecommitdiff
path: root/odb/relational/pgsql
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2013-04-05 10:16:48 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2013-04-10 18:46:44 +0200
commit853d76b58e96aab4e6182cc1234652dfcdd74c14 (patch)
tree612e54f542dd3d6a11d8a8299f2c82f35e9e714e /odb/relational/pgsql
parentc9dbc099d74d92b17724a24823aafe1fcc8ca7e7 (diff)
Generate alter column migration statements
Diffstat (limited to 'odb/relational/pgsql')
-rw-r--r--odb/relational/pgsql/schema.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/odb/relational/pgsql/schema.cxx b/odb/relational/pgsql/schema.cxx
index efe9b40..7e0b7a5 100644
--- a/odb/relational/pgsql/schema.cxx
+++ b/odb/relational/pgsql/schema.cxx
@@ -209,6 +209,19 @@ namespace relational
}
};
entry<create_index> create_index_;
+
+ struct alter_column: relational::alter_column, context
+ {
+ alter_column (base const& x): base (x) {}
+
+ virtual void
+ alter (sema_rel::alter_column& ac)
+ {
+ os << quote_id (ac.name ()) << " " <<
+ (ac.null () ? "DROP" : "SET") << " NOT NULL";
+ }
+ };
+ entry<alter_column> alter_column_;
}
}
}