<p>I'm adding a boolean column to an existing table and creating a different table with a boolean column:</p>

<div class="highlight highlight-source-perl"><pre>    <span class="pl-s"><span class="pl-pds">"</span>flagged_for_deletion<span class="pl-pds">"</span></span>,
    {   <span class="pl-c1">data_type</span> <span class="pl-k">=&gt;</span> <span class="pl-s"><span class="pl-pds">"</span>boolean<span class="pl-pds">"</span></span>,
        <span class="pl-c1">is_nullable</span> <span class="pl-k">=&gt;</span> 0,
        <span class="pl-c1">default_value</span> <span class="pl-k">=&gt;</span> 0,
    },</pre></div>

<p>and generating the DDL via DBIx::Class:</p>

<div class="highlight highlight-source-perl"><pre><span class="pl-smi">$schema</span><span class="pl-k">-&gt;</span>create_ddl_dir( [<span class="pl-s"><span class="pl-pds">'</span>MySQL<span class="pl-pds">'</span></span>], <span class="pl-c1">undef</span>, <span class="pl-s"><span class="pl-pds">'</span>./sql/ddl<span class="pl-pds">'</span></span>, <span class="pl-smi">$opt</span><span class="pl-k">-&gt;</span>pre_version,
                         { <span class="pl-c1">producer_args</span> <span class="pl-k">=&gt;</span> { <span class="pl-c1">mysql_version</span> <span class="pl-k">=&gt;</span> 5 } });</pre></div>

<p>The full schema is correctly generated, both tables have "flagged_for_deletion boolean NOT NULL DEFAULT '0'" which is exactly what I expected.  The diff however:</p>

<div class="highlight highlight-source-sql"><pre><span class="pl-k">CREATE</span> <span class="pl-k">TABLE</span> `<span class="pl-en">created</span>` (
  <span class="pl-c">-- snip</span>
  <span class="pl-s"><span class="pl-pds">`</span>flagged_for_deletion<span class="pl-pds">`</span></span> enum(<span class="pl-s"><span class="pl-pds">'</span>0<span class="pl-pds">'</span></span>,<span class="pl-s"><span class="pl-pds">'</span>1<span class="pl-pds">'</span></span>) <span class="pl-k">NOT NULL</span> DEFAULT <span class="pl-s"><span class="pl-pds">'</span>0<span class="pl-pds">'</span></span>,
  <span class="pl-c">-- snip</span>
) ENGINE<span class="pl-k">=</span>InnoDB DEFAULT CHARACTER <span class="pl-k">SET</span> utf8;

<span class="pl-k">ALTER</span> <span class="pl-k">TABLE</span> altered <span class="pl-c">-- snip</span>
                    ADD COLUMN flagged_for_deletion <span class="pl-k">boolean</span> <span class="pl-k">NOT NULL</span> DEFAULT <span class="pl-s"><span class="pl-pds">'</span>0<span class="pl-pds">'</span></span>,
                    <span class="pl-c">-- snip</span></pre></div>

<p>The CREATE TABLE statement has the backtick quoting (that the full schema doesn't have) and uses MySQL 3-style boolean emulation with enums.  From all the way over here it looks like it's been generated by a different producer with different options, so it might be a DBIC issue instead?</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">&mdash;<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly or <a href="https://github.com/dbsrgits/sql-translator/issues/81">view it on GitHub</a><img alt="" height="1" src="https://github.com/notifications/beacon/AASeAq9NovJXzCyJN5IyCIkCKwLZj_crks5pypjJgaJpZM4H74_s.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/dbsrgits/sql-translator/issues/81"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>