out: support table definition

If there is the same name table, the table is renamed and recreated by
the specified definition. Is it OK?

TODO: Document me