tags:

views:

64

answers:

2

What are server SQL modes?

A: 

Mysql: Server SQL modes define what SQL syntax MySQL should support and what kind of data validation checks it should perform. This makes it easier to use MySQL in different environments and to use MySQL together with other database servers. The MySQL Server apply these modes individually to different clients.

ZA
The reasoning that it's not good to use is wrong - at least without specifying the environment. And by the way: it's always nice to link to the source when quoting verbatim...
Stefan Gehrig
+1  A: 

Just have a look at

22.3.1: What are server SQL modes?

Server SQL modes define what SQL syntax MySQL should support and what kind of data validation checks it should perform. This makes it easier to use MySQL in different environments and to use MySQL together with other database servers. The MySQL Server apply these modes individually to different clients. For more information, see Section 5.1.7, “Server SQL Modes”.

Quoting Wright:

But it's not good to use.

I do think that this general reasoning is wrong. There are situations where using the appropriate SQL mode can be beneficial.

Simply said it's all about having MySQL behave more like other tradional RDMS like SQL Server, DB2 or Oracle. For the "normal" user that e.g. uses MySQL as a website backend, SQL modes are generally irrelevant, but if you're implementing MySql in enterprise scenarios SQL modes can come in quite handy (especially when migrating databases).

Stefan Gehrig