遭遇ORA-03144、ORA-07445

昨天下午,我写完一个存储过程提交编译。“Beng”弹出一个对话框
                                     ORA-03144 连接已断开
重试,问题依旧。PING 数据库服务器 OK!
查ORA-03114
ORA-03114:not connected to ORACLE
Cause:A call to Oracle was attempted when no connection was established. Usually this happens because a user-written program has not logged on. It may happen if communication trouble causes a disconnection. In addition, this message could occur when ALTER SYSTEM KILL SESSION or ALTER SYSTEM DISCONNECT SESSION were issued with the IMMEDIATE qualifier because, in those cases, the client's connection to the database is terminated without waiting for the client to issue a request

会话所在的进程被KILL !赶紧查看跟踪文件发现:
Errors in file /opt/db/oracle/admin/SHWL/udump/shwl_ora_5385.trc:
ORA-07445: exception encountered: core dump [pdz9M08_Type_Kind()+6] [SIGSEGV] [Address not mapped to object] [0xC] [] []
打开跟踪文件:
*** ACTION NAME:(Main session) 2009-11-10 15:43:08.417
*** MODULE NAME:(PL/SQL Developer) 2009-11-10 15:43:08.417
*** SERVICE NAME:(SHWL) 2009-11-10 15:43:08.417
*** SESSION ID:(123.7) 2009-11-10 15:43:08.417
Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0xc, PC: [0xb5f6130, pdz9M08_Type_Kind()+6]
Registers:
%eax: 0x00000000 %ebx: 0xb7ebbff8 %ecx: 0x0c81b748
%edx: 0x00000000 %edi: 0x00000c58 %esi: 0x00000003
%esp: 0xbfbfc22c %ebp: 0xbfbfc22c %eip: 0x0b5f6130
%efl: 0x00210297
  pdz9M08_Type_Kind()+0 (0xb5f612a) push %ebp
  pdz9M08_Type_Kind()+1 (0xb5f612b) mov %esp,%ebp
  pdz9M08_Type_Kind()+3 (0xb5f612d) mov 0x8(%ebp),%edx
> pdz9M08_Type_Kind()+6 (0xb5f6130) mov 0xc(%edx),%eax
  pdz9M08_Type_Kind()+9 (0xb5f6133) mov %ebp,%esp
  pdz9M08_Type_Kind()+11 (0xb5f6135) pop %ebp
  pdz9M08_Type_Kind()+12 (0xb5f6136) ret
  pdz9M08_Type_Kind()+13 (0xb5f6137) nop
*** 2009-11-10 15:43:08.420
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [pdz9M08_Type_Kind()+6] [SIGSEGV] [Address not mapped to object] [0xC] [] []
Current SQL statement for this session:

procedure Billing(p_OrderID IN Orders.Orderid%type,
  p_BranchCompany IN Orders.Destinationbranch%type,-
  p_CashierEmployeeNO IN Employee.Employeeno%type
)
IS
   v_order  ORDERS%ROWTYPE;
BEGIN
    select * bulk collect into v_order from orders where rderid=p_OrderID;

end CustomerPickup;
下面是调用堆栈及进程信息太长了略
原来只有一条件记录时不能用bulk collect into 
但oracle 也不应该这样,直接提示一条记录不能用bulk 得了。
~~~~~~~~~~~··
这还是我打开旧的代码文件编译时发现里面没有bulk 才发现是这个问题.
但不知为何?

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9683969/viewspace-619428/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9683969/viewspace-619428/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值