I'm using Room database in my application. I've some changes in columns of the Entity , so in DB Migration I want to drop the old table and recreate it with the updated Entity. But after Drop Table query instead of writing a long query to create the table again, can we just pass the entity model somehow or tell the DB to recreate the entity? Because my Entity has a number of columns,relations and onDelete rule in it so query would be complex.

Following is the Entity:

```
@Entity(tableName = MediaTags.TABLE_NAME_UPLOAD_MEDIA,
        foreignKeys =
        @ForeignKey(
                entity = PostUpload.class,
                parentColumns = PostTags.COLUMN_UPLOAD_POST_LOCAL_ID,
                childColumns = MediaTags.COLUMN_UPLOAD_MEDIA_POST_ID,
                onDelete = CASCADE),
        indices = {@Index(MediaTags.COLUMN_UPLOAD_MEDIA_POST_ID)})
public class MediaUpload {
    @Ignore
    public final static int MEDIA_TYPE_IMAGE = 1;
    @Ignore
    public final static int MEDIA_TYPE_VIDEO = 2;

    @PrimaryKey
    @NonNull
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_KEY)
    public String mediaKey; // unique key
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_HASH_MD5)
    public String hashMd5;   // hashMd5 of file, for now we are sending it empty, in future will be used
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_TYPE)
    public int mediaType;  // picture or video
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_STATUS)
    public int status = UploadStatus.NOT_COMPRESSED; // upload and edit statues
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_FILE_PATH)
    public String filePath;
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_POST_ID)
    public String postId;
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_THUMBNAIL)
    public String thumbnail;  // thumbnail in case of videos
    @ColumnInfo(name = MediaTags.COLUMN_UPLOAD_MEDIA_OVERLAY_PATH)
    public String overlayPath;  // overlay image containing all the editing

}

```