Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何找到将空白数据插入表中的应用程序的哪个部分?_Mysql_Node.js_Orm - Fatal编程技术网

Mysql 如何找到将空白数据插入表中的应用程序的哪个部分?

Mysql 如何找到将空白数据插入表中的应用程序的哪个部分?,mysql,node.js,orm,Mysql,Node.js,Orm,我有这个问题。应用程序数据库中的一个表不断插入空白数据。它是一个主表,因此通常不添加新数据。现在,我想知道插入操作从何而来。我在我的源代码中找不到任何可以向这个特定表插入数据的引用 因此,我创建了一个触发器,这样每当表执行insert操作时,它都会失败。希望我能捕捉到任何创建插入的东西 昨天我在我们的日志中看到了以下内容: Error (E_UNKNOWN) :: Encountered an unexpected error : ER_CANT_UPDATE_USED_TABL

我有这个问题。应用程序数据库中的一个表不断插入空白数据。它是一个主表,因此通常不添加新数据。现在,我想知道插入操作从何而来。我在我的源代码中找不到任何可以向这个特定表插入数据的引用

因此,我创建了一个触发器,这样每当表执行insert操作时,它都会失败。希望我能捕捉到任何创建插入的东西

昨天我在我们的日志中看到了以下内容:

Error (E_UNKNOWN) :: Encountered an unexpected error
        : ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG: Can't update table 'provinces' in stored function/trigger because it is already used by statement which inv
        oked this stored function/trigger.
            at Query.Sequence._packetToError (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:48:14)
            at Query.ErrorPacket (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/sequences/Query.js:83:18)
            at Protocol._parsePacket (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Protocol.js:280:23)
            at Parser.write (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Parser.js:73:12)
            at Protocol.write (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Protocol.js:39:16)
            at Socket.<anonymous> (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/Connection.js:96:28)
            at emitOne (events.js:96:13)
            at Socket.emit (events.js:188:7)
            at readableAddChunk (_stream_readable.js:176:18)
            at Socket.Readable.push (_stream_readable.js:134:10)
            at TCP.onread (net.js:559:20)
            --------------------
            at Protocol._enqueue (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Protocol.js:141:48)
            at PoolConnection.query (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/Connection.js:201:25)
            at Object.f.dynatraceRegularInvoke [as doInvoke] (/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsagent.js:9243:20)
            at Object.a.safeInvoke (/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsagent.js:9316:29)
            at PoolConnection.query (/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsagent.js:6104:15)
            at __CREATE__ (/home/ubuntu/apps/brambang/node_modules/sails-mysql/lib/adapter.js:394:20)
            at afterwards (/home/ubuntu/apps/brambang/node_modules/sails-mysql/lib/connections/spawn.js:84:5)
            at /home/ubuntu/apps/brambang/node_modules/sails-mysql/lib/connections/spawn.js:40:7
            at Ping.onOperationComplete [as _callback] (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/Pool.js:99:5)
            at Ping.Sequence.end (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:96:24)
            at Ping.Sequence.OkPacket (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:105:8)
            at Protocol._parsePacket (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Protocol.js:280:23)
            at Parser.write (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Parser.js:73:12)
            at Protocol.write (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/protocol/Protocol.js:39:16)
            at Socket.<anonymous> (/home/ubuntu/apps/brambang/node_modules/sails-mysql/node_modules/mysql/lib/Connection.js:96:28)
            at emitOne (events.js:96:13)
            at Socket.emit (events.js:188:7)
            at readableAddChunk (_stream_readable.js:176:18)
            at Socket.Readable.push (_stream_readable.js:134:10)
            at TCP.onread (net.js:559:20)

Details:  Error: ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG: Can't update table 'provinces' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
错误(E_未知)::遇到意外错误
:ER\u不能\u更新\u使用的\u表\u在\u SF\u或\u TRG中:无法更新存储函数/触发器中的表'provings',因为它已被inv
已删除此存储函数/触发器。
在Query.Sequence._packetToError(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:48:14)
在Query.ErrorPacket(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/sequences/Query.js:83:18)
协议解析包(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Protocol/Protocol.js:280:23)
在Parser.write(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/Parser.js:73:12)
在Protocol.write(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Protocol/Protocol.js:39:16)
在插座上。(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Connection.js:96:28)
在emitOne(events.js:96:13)
在Socket.emit(events.js:188:7)
在readableAddChunk(_stream_readable.js:176:18)
在Socket.Readable.push(_stream_Readable.js:134:10)
在TCP.onread(net.js:559:20)
--------------------
在协议队列中(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Protocol/Protocol.js:141:48)
在PoolConnection.query(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Connection.js:201:25)
在Object.f.dynatraceRegularInvoke[as doInvoke](/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsage.js:9243:20)
在Object.a.safeInvoke(/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsagent.js:9316:29)
在PoolConnection.query(/opt/dynatrace/oneagent/agent/res/nodeagent/nodejsagent.js:6104:15)
创建(/home/ubuntu/apps/brambang/node\u modules/sails mysql/lib/adapter.js:394:20)
之后(/home/ubuntu/apps/brambang/node_modules/sails mysql/lib/connections/spawn.js:84:5)
在/home/ubuntu/apps/brambang/node_modules/sails mysql/lib/connections/spawn.js:40:7
在Ping.onOperationComplete[as_callback](/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Pool.js:99:5)
在Ping.Sequence.end(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:96:24)
在Ping.Sequence.OkPacket(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/sequences/Sequence.js:105:8)
协议解析包(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Protocol/Protocol.js:280:23)
在Parser.write(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/protocol/Parser.js:73:12)
在Protocol.write(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Protocol/Protocol.js:39:16)
在插座上。(/home/ubuntu/apps/brambang/node_modules/sails mysql/node_modules/mysql/lib/Connection.js:96:28)
在emitOne(events.js:96:13)
在Socket.emit(events.js:188:7)
在readableAddChunk(_stream_readable.js:176:18)
在Socket.Readable.push(_stream_Readable.js:134:10)
在TCP.onread(net.js:559:20)
详细信息:错误:ER\u不能\u更新\u在\u SF\u或\u TRG中使用的\u表\u无法更新存储函数/触发器中的表“省”,因为调用此存储函数/触发器的语句已使用该表。
好的,现在我知道这个应用程序的一部分正在向表中插入内容,现在的问题是如何识别我的应用程序的哪个部分正在这样做

你知道我该怎么做吗?我没有找到代码的哪一部分正在执行此操作的参考

多谢各位

  • 我已经对表进行了NOTNULL检查,但是(在创建触发器之前)一直有空白数据进入,不是Null,而是空白
  • 我甚至创建了一个调度器来删除id>94的任何内容,因为表中存在空白数据,部分web应用程序会出错
  • 我想弄清到底是什么在创建这些空白数据