 <p>MySQL has an <code>UNSIGNED</code> qualifier for integer types.</p> <p>Negative values will be clamped to zero, but will generate a warning:</p> <pre><code>mysql&gt; create table test ( id int(5) unsigned not null ); Query OK, 0 rows affected (0.05 sec) mysql&gt; insert into test values (-1), (5), (10); Query OK, 3 rows affected, 1 warning (0.01 sec) Records: 3 Duplicates: 0 Warnings: 1 mysql&gt; select * from test; +----+ | id | +----+ | 0 | | 5 | | 10 | +----+ 3 rows in set (0.01 sec) </code></pre>