It looks a bit strange to have DML operations handled by the SQL generator designed for DDL operations. To me this seems a bit better, at least conceptually, but maybe I am missing something.