使用触发器时收到错误“没有更多数据从套接字读取”

Posted

技术标签:

【中文标题】使用触发器时收到错误“没有更多数据从套接字读取”【英文标题】:Recieving Error "no more data from to read from socket" when using trigger 【发布时间】:2016-12-12 00:00:24 【问题描述】:

我创建了一个表,用于跟踪架构中表的创建,但是当触发器编译时,它抛出错误“没有来自套接字的更多数据”并且我失去了与数据库的连接。

我的审核表如下:

CREATE TABLE TABLE_AUDIT(
DATE_CREATED DATE,
USERNAME VARCHAR2(30),
TABLE_NAME VARCHAR2(30))

还有我的触发器:

create or replace TRIGGER tableCreationTrigger
AFTER CREATE 
   ON SCHEMA    
DECLARE  
  date_created TABLE_AUDIT.DATE_CREATED%type;  
  username TABLE_AUDIT.USERNAME%type;
  table_name TABLE_AUDIT.TABLE_NAME%type;
BEGIN
date_created := sysdate;
SELECT USER
into username
from dual;
:New.table_Name := table_name;

INSERT INTO TABLE_AUDIT (DATE_CREATED, USERNAME, TABLE_NAME)
Values(DATE_CREATED, USERNAME, TABLE_NAME);

EXCEPTION
   WHEN others THEN
    DBMS_OUTPUT.PUT_LINE('Error on insert into table_audit');  
    RAISE;
END;
/

【问题讨论】:

【参考方案1】:

请尝试重新启动数据库并重试。

"no more data from socket" 是由于 DB 无法响应查询。

【讨论】:

以上是关于使用触发器时收到错误“没有更多数据从套接字读取”的主要内容,如果未能解决你的问题,请参考以下文章

使用编译错误创建的触发器:

触发错误:ORA-01403 插入时找不到数据

在配置触发器时更新表中的列时出现错误

PLS-00382:表达式的类型错误触发器

mysql中的触发器收到错误

从 NDBCLUSTER 收到错误 4239“具有给定名称的触发器已存在”