问题标签 [sql-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
256 浏览

mysql - 服务器的默认全局 sql_mode 设置

我将共享服务器上的 sql_mode 设置为

ONLY_FULL_GROUP_BY,​STRICT_TRANS_TABLES,​NO_ZERO_IN_DATE,​NO_ZERO_DATE,​ERROR_FOR_DIVISION_BY_ZERO,​NO_AUTO_CREATE_USER,​NO_ENGINE_SUBSTITUTION

如果我删除了这些变量,它仍然是空白会发生什么?会影响其他用户吗?一些用户希望 sql_mode 空白,而我的想法是他们应该使用他们的代码设置自己的模式。

问这个问题的重点是在问题发生的层面上解决问题,而不是改变全局设置

0 投票
1 回答
41 浏览

mysql - 是否可以在不更改 sql_mode 的情况下获得总和?

SUM我在使用 join 语句从多个表中获取值时遇到问题。错误是:

这与 sql_mode=only_full_group_by 不兼容

是否有可能在不改变的情况下得到总和sql_mode?如果可以的话,怎么做一个SQL语句来?

fuel

usage

SQL 语句如下:

0 投票
1 回答
371 浏览

mysql - 更改sql模式后在ubuntu上重新启动MySQL

我在mysql中遇到错误

为此我发现我需要使用更改 sql 模式

我已经在 mysql 终端中执行了上述操作,执行后建议重新启动 mysql 服务。所以我已经从mysql终端到ubuntu终端并尝试执行

我收到一条错误消息sudo: restart: command not found。有人可以帮我理解为什么我会收到这个错误。

0 投票
1 回答
46 浏览

python - 使用 MySQL db 和 python 客户端执行 sql 查询时出错

我有一个复杂的 sql 查询,如下所示,我使用它从 python 脚本访问 MySQL db。

我收到上述查询的错误,上面写着

我试图通过执行来改变sql模式

并尝试使用重新启动mysql服务

我想我已经做了所有需要的事情,为什么我不确定为什么我仍然会遇到同样的错误。有人可以帮我解决这个问题。

0 投票
1 回答
315 浏览

mysql - 无法在 MySQL 中将 GROUP BY 与连接查询一起使用

我需要执行以下查询但无法执行。

错误:"#1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'riderActice.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"

我已经阅读了一些博客并找到了以下解决方案。

但是执行上述解决方案我遇到了另一个问题

如果我遗漏了什么或做错了,请告诉我

0 投票
1 回答
133 浏览

mysql - JPA、distinct、order by、null 值和 ONLY_FULL_GROUP_BY sql 模式

我有一个结构如下的 JPA 查询:

我使用的是 MySQL 8,因为我使用 ORDER BY 子句按项目属性、地区名称、国家名称和品牌名称进行排序)我收到此错误:

我必须在 SELECT 中包含 order by 字段:

问题是这样做查询现在不再选择国家== NULL的项目。

除了删除 distinct 或更改sql-mode?

谢谢

0 投票
1 回答
55 浏览

mysql - MySQL/MariaDB 在存储时可以默默地改变值的方式

我正在搜索 MySQL/MariaDB 中存储时传输的值与以后可以检索的值不同的情况。我只对VARCHAR*TEXT等非二进制字符串数据类型的字段感兴趣。

我想更全面地了解可以信任多少储值。这对于输出只是缺少某些字符的情况(例如下面的转义字符示例)特别有趣,因为这在验证时特别危险。

所以,这可以归结为:你可以创建一个输入字符串(和/或定义一个环境),它不会<value>在第二个语句中输出吗?

我能想到的事情:

  • 包含转义 ( \aa)的字符串
  • 如果太长被截断
  • 表的字符编码不支持输入

如果某些事情静默失败,可能还取决于 SQL 模式设置的严格程度(如最后两个示例)。

非常感谢您的意见!

0 投票
4 回答
136 浏览

mysql - 了解在 MySQL 中设置 ONLY_FULL_GROUP_BY sql 模式的非标准 GROUP BY

我了解 ANSI SQL 需要使用聚合函数选择非 GROUP BY 属性。

例如,下面在 ANSI SQL 中是无效的:

asname没有传递给任何聚合函数。

但是,MySQL 允许这样做。如果我们想让 MySQL 表现得像 ANSI SQL,我们需要按照这里的说明设置 sql 模式。但是当我尝试这样做时,它仍然没有给我任何错误:

SELECT name, MAX(salary), dept FROM employee_gb GROUP BY dept;

我想上面的查询应该给我错误。我在这里缺少什么?

以下是填充数据的查询:

这些是从 CLI 执行的一些屏幕截图:

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
1337 浏览

mysql - 错误代码:1292。日期值不正确:日期列的“0000-00-00”

我正在尝试在 MySQL Workbench 中运行以下脚本:

我得到这个错误:

现在我已经禁用了my.iniMySQL Workbench 设置使用的严格模式

我扫描了my.ini驱动器中安装了 MySQL 的任何驱动器,这是我看到的唯一存在的驱动器。我有一个 Laravel 应用程序在严格模式下运行得很好,但是无论出于何种原因 MySQL Workbench 给了我这个错误,我不知道为什么。这几乎就像它忽略了那个价值。我已多次重新启动 MySQL 和 MySQL Workbench,但无法使该脚本成功运行。

我错过了什么?

0 投票
0 回答
187 浏览

mysql - 无法在 Azure Database for MySql Server 上关闭 only_full_group_by

我正在使用 Azure Database for MySql Server,并且在运行某个存储过程时,出现此错误:

在没有 GROUP BY 的聚合查询中,SELECT 列表的表达式 #1 包含非聚合列“mydatabase.mytable.id”;这与 sql_mode=only_full_group_by 不兼容

现在我知道我为什么会得到它,我会修复查询,但这是一个非常庞大的查询,需要一些时间来完成。现在,作为让我的客户再次工作的临时解决方案,我想将 only_full_group_by 设置为 false。我知道要全局设置它,我需要超级用户权限,所以我登录 Azure 门户,转到“Azure Database for MySQL 服务器”,转到“服务器参数”查找“sql_mode”参数,然后将“only_full_group_by”选项关闭,但我看到它已经关闭。所以我不确定为什么我仍然收到错误。

然后我尝试在会话中将其关闭:

但我仍然收到该错误。

有没有办法在 Azure Database for MySql Server 中关闭“only_full_group_by”?

谢谢