在控制台中执行命令时,有没有办法禁用SQL查询日志(log)记录?理想情况下,如果我可以禁用它,然后在控制台中使用命令重新启用它,那就太好了.

我试着调试一些东西,并使用"puts"打印出一些相关数据.然而,sql查询输出使其难以读取.


Edit:

您可以将记录器的级别设置为1,而不是将记录器设置为nil.

ActiveRecord::Base.logger.level = 1 # or Logger::INFO

推荐答案

要关闭它,请执行以下操作:

old_logger = ActiveRecord::Base.logger
ActiveRecord::Base.logger = nil

要重新打开它,请执行以下操作:

ActiveRecord::Base.logger = old_logger

Sql相关问答推荐

优化SQL查询流

每组显示一行(表1中的分组值),表2中的不同列表用逗号分隔

连接三个表的正确方式是什么?在这三个表中,可以显示在一个表上的行将在其他表中显示结果

不同表达方式时的大小写

如何为该查询编写正确分区依据

从结果SQL查询中排除空值

SQL中相同表内的VLOOKUP等价

按二维数组的第一个元素排序

根据时间值提取记录

具有多个表 JOINS 的 STRING_AGG 的替代方法 (SQL Server 2016)

用户定义的标量值函数是否仍然会阻止并行性?

Clickhouse:左连接表到外部数组

如何获取每个组中最近的n条记录并将它们聚合成数组

SQL 函数 DIFFERENCE 返回有趣的分数

SQL Server 查找存在于所有不同时期(或序列)中的条目

使用SQL中另一个表的查询结果在表中查找记录

以 15 分钟为间隔的使用情况SQL 查询

T-SQL 查询计算日期在其他列中定义的日期之间绑定的行数

使用 SAVE TRANSACTION 时 BEGIN 和 COMMIT 语句的数量不匹配

连接表时避免重复