适用于所有会话的符合标准的MySQL样板

时间:2018-01-24 15:15:17

标签: mysql

在讨论其他编程语言时,请耐心等待。

所以我的问题是:我是否应该在所有MySQL会话中包含一个广泛认可或官方认可的样板选项以避免错误?

1 个答案:

答案 0 :(得分:1)

我不知道这是否符合确切答案,但您可以使用MySQL的最佳做法是确保为每个会话启用ANSI MySQL服务器模式。来自documentation

  

等同于REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE和(从MySQL 5.7.5开始)ONLY_FULL_GROUP_BY。

     

ANSI模式还会导致服务器为查询返回错误,其中具有外部引用S(outer_ref)的set函数S无法在外部查询中汇总,而外部引用已针对该查询进行聚合。

ANSI模式将产生更有可能在其他数据库中运行的MySQL查询。 ANSI模式实际上是模式的组合,包括ONLY_FULL_GROUP_BY。此分组模式强制执行聚合查询符合ANSI标准。这通常是良好的数据库实践,同样也增加了MySQL查询相对容易地移植到另一个数据库的机会。