title: Drop and then create same columns in current up migration function
body: <pre><code>Schema::table('users', function (Blueprint $table) {
              $table-&gt;dropTimestamps();
              $table-&gt;dropColumn(['email', 'bio']);
  
              $table-&gt;string('email', 20)-&gt;unique()-&gt;after('id');
              $table-&gt;string('bio', 150)-&gt;after('surname');
              $table-&gt;timestamps();
          });
  </code></pre>
  
  <p>That is what I've got now. So, I have the columns existing atm in my table, but I want to modify and re-arrange them a bit. But when I run the migration, I get SQL error that <code>email</code> column exists. And I will probably get the same error for the <code>bio</code> and <code>timestamps</code> as well. I kind of understand why this happens, so what am I asking is just for a workaround.</p>
  
  <p>Is it possible to make what I want inside one single migration, or I have to create a migration for deleting the columns and then a separate migration for creating them the way I want?</p>