On Thu, Jun 24, 2010 at 6:13 PM, Scott Marlowe <scott.marlowe@gmail.com> wrote:
> For instant, by default, this will work in mysql:
>
> create table test (i int);
> insert into test (i) values ('');
>
> with a warning, but will produce an error in most modern versions of pgsql.
>
However it is easy to get mostly sane behavior from MySQL:
mysql> set sql_mode='strict_all_tables';
Query OK, 0 rows affected (0.00 sec)
mysql> create table test (i int);
Query OK, 0 rows affected (0.05 sec)
mysql> insert into test (i) values ('');
ERROR 1366 (HY000): Incorrect integer value: '' for column 'i' at row 1
If it were me I would generally work with whichever system I knew
better unless there was a specific reason to migrate. Both systems
will be a bit of a pain as they are both complicated. C'est la vie.
All else being equal I would start a new project with PG.
Full disclosure: I am a MySQL DBA.
Best,
Rob Wultsch
wultsch@gmail.com